■ メタ文字(特殊文字)
正規表現で使えるメタ文字には下記のものが用意されています。
| メタ文字 |
意味 |
| \a |
アラーム(ベル) |
| \c |
制御文字 |
| \d |
数字1字に一致する |
| \D |
数字以外の1字に一致する |
| \E |
大文字・小文字変換の終了 |
| \e |
エスケープ |
| \f |
改ページ |
| \n |
改行 |
| \l |
次の文字を小文字に変換 |
| \L 〜 \E |
\L 〜 \E までを小文字に変換 |
| \Q 〜 \E |
\Q 〜 \E までのパターン指定メタキャラクタの意味を打ち消す |
| \r |
復帰 |
| \S |
スペース以外の1字に一致する |
| \s |
スペース1字に一致する |
| \t |
タブ |
| \u |
次の文字を大文字に変換 |
| \U 〜 \E |
\U 〜 \E までを大文字に変換 |
| \w |
単語構成文字 (英数字と _) に一致する |
| \W |
単語構成文字以外に一致する |
| \077 |
8進数表現 |
| \x1 |
16進数文字1字に一致する(日本語を一致させる際に使用) |
■ 量指定子について
繰り返し文字を指定する量指定子は下記のものが使えます。
| 量指定子 |
意味 |
| * |
0回以上一致する |
| + |
1回以上一致する |
| ? |
0回または1回一致する |
| {n} |
n 回一致する |
| {n,} |
n 回以上一致する |
| {n,m} |
n 回以上、m 回以下一致する |
■ 位置指定子について
正規表現の文字検索で検索位置を指定したい場合は、位置指定子を使います。
| 位置指定子 |
意味 |
| ^ |
行頭に一致する |
| $ |
行末(または改行の直前)に一致する |
| \b |
単語の境界に一致する |
| \B |
単語以外の境界に一致する |
| \A |
文字列の先頭(1文字目の手前)に一致する |
| \Z |
文字列の最後(または改行の直前)に一致する |
| \z |
文字列の最後に一致する |
| \G |
直前のm//g が一致していた場所に一致する(/g 使用時のみ有効) |
| (? = 式) |
後続の文字列が式に一致すれば一致したとみなす |
| (? ! 式) |
後続の文字列が式に一致しなければ一致したとみなす |
| (? <= 式) |
先行の文字列が式に一致すれば一致したとみなす |
| (? <! 式) |
先行の文字列が式に一致しなければ一致したとみなす |
■ 修飾子について
修飾子を設定すると、正規表現での文字検索、文字置換時の各種設定を行なえます。
修飾子は複数指定することが可能です。
[m// 、s/// 構文の修飾子]
| 修飾子 |
意味 |
| i |
英字の大文字・小文字を無視する |
| x |
パターン内のスペースを無視し、コメントを入れられるようにする |
| g |
処理の対象範囲を全域とする |
| gc |
照合に失敗した場合に検索位置をリセットしない |
| s |
ドット(.) が改行にも一致するようにする |
| m |
^ と $を照合するときに、埋め込まれている \n にも一致するようにする |
| o |
パターンを1回だけコンパイルする |
| e (s///のみ) |
s/// の右側を式とみなして実行する |
| ee (s///のみ) |
s/// の右側を文字列として評価し、式を実行してから、戻り値をもう一度評価する |
[tr/// 構文の修飾子]
| 修飾子 |
意味 |
| c |
検索リストに指定された文字を除外する |
| d |
置換されなかった文字を削除する |
| s |
置換後の文字が重複している場合は削除して1つに詰める |