正規表現のクイックリファレンス

はじめにお読みください

ここではよく使われる正規表現を抜粋し、アイテム名の変更をターゲットとした内容および表現にしています。

またここでは正規表現自体の説明はしていませんことをあらかじめご了承願います。

もくじ

文字のエスケープ

正規表現において通常の文字と制御文字を切り替えます。

\
(バックスラッシュ)
直後の文字が(正規表現における)制御文字の場合は通常の文字として、反対に通常の文字の場合は(正規表現における)制御文字として扱います。

キーボードによる 「\(バックスラッシュ)」の入力方法は( JIS キーボードの場合)「option + ¥キー(⌥¥」です。

ここをクリックして置換の例を以下に表示
書式検索置換リネーム前リネーム後
\\$$9999

文字クラス

以下に挙げる文字セットのいずれかとマッチします。

.任意の1文字
\sスペース類の文字セット
\S前述の\s以外の文字セット
\w(英語、数字など)単語を構成する文字セット
\W前述の\w以外の文字セット
\d数字の文字セット
\D前述の\d以外の文字セット
[x1x2x3] x1x2x3 の文字セット
[^x1x2x3]前述の[x1x2x3]以外の文字セット
[xy] (ハイフンで繋げられた)x から y までの範囲にある文字セット
(含まれる文字は Unicode コードポイントの順序によって決まります)
ここをクリックして置換の例を以下に表示
書式検索置換リネーム前リネーム後
.….apexampleapple
\s\s@<I’m No.1><I’m@No.1>
\S\Sx<I’m No.1>xxxx xxxxx
\w\wx<Im No.1><xx xx.x>
\W\W_<Im No.1>_I_m_No_1_
\d\d\dSEiPhone 16iPhone SE
\D\D123_456 789+01234567890
[x1x2x3][AD35]_ABCDE12345_BC_E12_4_
[^x1x2x3][^AD35]_ABCDE12345A__D__3_5
[xy][A-C0-3]_ABCDE12345___DE___45

アンカー

文字列の先頭または末尾にマッチします。

^アイテム名の先頭
$アイテム名の末尾
ここをクリックして置換の例を以下に表示
書式検索置換リネーム前リネーム後
^^the BEGINtheBEGIN
$$!!END END!!

量指定子

直前の文字の繰り返しにマッチします。

*0 回以上の繰り返しに(できるだけ長く)マッチ
+1 回以上の繰り返しに(できるだけ長く)マッチ
*?0 回以上の繰り返しに(できるだけ短く)マッチ
+?1 回以上の繰り返しに(できるだけ短く)マッチ
?0 回または 1 回の繰り返しに(1 回のマッチを優先して)マッチ
??0 回または 1 回の繰り返しに(0 回のマッチを優先して)マッチ
{n}n 回の繰り返しにマッチ
{n,}n 回以上の繰り返しに(できるだけ長く)マッチ
{n,m}n 回から m 回の繰り返しに(最大 m 回までできるだけ多く)マッチ
{n,m}?n 回から m 回の繰り返しに(最小 n 回以上でできるだけ短く)マッチ
ここをクリックして置換の例を以下に表示
書式検索置換リネーム前リネーム後
*AB*_ABCCBA_CCB_
+\d+D123456789DD
*?ab*?_abcac_bc_c
+?ab+?_abcac_cac
?ab?_abcac_c_c
??ab??_abcac_bc_c
{n}\d{6}X123-456789123-X
{n,}\d{3,}X12-345678912-XX
{n,m}\d{6,9}X1234567890X0
{n,m}?\d{6,10}?_1234567890_7890

選択演算子

|
(バーチカルバー)
| の左側と右側のいずれかにマッチ
ここをクリックして置換の例を以下に表示
書式検索置換リネーム前リネーム後
|a|p_samples_m_le

キャプチャ(グループ化)

他の場所から参照できるように設定します。

(x)マッチした部分をキャプチャし 1 から始まる序数(連番)を設定することで、あとで呼び出せるようにします
ここをクリックして置換の例を以下に表示
書式検索置換リネーム前リネーム後
(x)(\d+)\w+$1123ABC123

後方参照

キャプチャしたものをその後方で(マッチさせるために)参照します。

\nキャプチャグループの n 番目(序数)が \n でマッチします
ここをクリックして置換の例を以下に表示
書式検索置換リネーム前リネーム後
\n(ab)(.+)\1$2abXYZabXYZ

置換

上述した書式で表現された文字列において、置換時に使用可能な正規表現です。

$nキャプチャグループの n 番目を $n とすることで置換テキストとして利用します
\
(バックスラッシュ)
直後の文字を通常の文字として扱います
(置換テキストにおいては「$」「\」を通常の文字として扱う場合に必要ですが、他の文字に使用しても問題はありません)
ここをクリックして置換の例を以下に表示
書式検索置換リネーム前リネーム後
$nAB(\w)(\w)$2$1ABCDDC
\(\d+)\$$1ABC99ABC$99

補足

もっと詳しく知りたい方は以下を参照してください。

もくじ