Php/docs/regexp.reference.meta

提供:Dev Guides
< Php
移動先:案内検索

メタ文字

正規表現の強力さは、パターン中に選択肢や繰り返しを記述できることに あります。選択肢や繰り返しは、メタ文字 (meta-character) を使ってパターン中に記述します。メタ文字は、 その文字自体を表わさず、代わって特別な解釈が行われます。

メタ文字には、2 種類あります。ひとつは、角カッコ内を除き、 パターン中のどこででも使用できる文字です。もうひとつは、 角カッコで括られた中でだけ使用できる文字です。

前者の角カッコ外で使用できるメタ文字には、次のものがあります。

角カッコ外で使用できるメタ文字
メタ文字 説明
\ 多目的に使う一般的なエスケープ文字
^ 検索対象(複数行モードでは行)の始まりを言明
$ 検索対象の終わりあるいは終端の改行文字の前(複数行モードでは行の終わり)を言明
. 改行を除くすべての文字にマッチ(デフォルト時)
[ 文字クラス定義の開始
] 文字クラス定義の終了
選択枝の開始
( サブパターンの開始
) サブパターンの終了
? ( の意味を拡張/0 または 1 回マッチ/なるべく少ない回数だけマッチ

(繰り返し を参照)

* 0 回以上の繰り返し
+ 1 回以上の繰り返し
{ 最小/最大を指定する量指定子の開始
} 最小/最大を指定する量指定子の終了

パターン中の角カッコで括まれた部分を「文字クラス」と言います。 文字クラスで使えるメタ文字は、次のものだけです。

角カッコ内のメタ文字 (文字クラス)
Meta-character Description
\ 一般的なエスケープ文字
^ クラスの否定。ただし、文字クラスの最初の文字に用いた場合のみ
- 文字の範囲の指定

以降のセクションで、各メタ文字の使用法の説明を行います。