メタ文字
|
説明
|
---|---|
\a
|
アラーム(ベル)文字と一致します。
|
\A
|
文字列の最初の文字のみと一致します。
|
\b
|
単語の境界(単語と空白の間の位置)と一致します。
|
\B
|
単語の境界以外と一致します。
|
\cA-\cZ
|
制御文字と一致します。たとえば、\cXは制御文字control-Xと一致します。
|
\C
|
1バイトと一致します。
|
\d
|
数字と一致します。[0−9]と同じ意味です。
|
\D
|
数字以外と一致します。[^0−9]と同じ意味です。
|
\e
|
エスケープ文字と一致します。
|
\E
|
大文字と小文字の変更の終了を指定します。
|
\f
|
フォームフィード文字と一致します。
|
\l
|
次に続く文字を小文字に指定します。
|
\L
|
次に続く\Eメタ文字までの文字列を小文字に指定します。
|
\n
|
改行文字と一致します。
|
\num
$num
|
キャプチャバッファnumと一致します。numは正の整数です。Perlの変数構文($num)は、キャプチャバッファを参照する場合は有効ですが、それ以外では無効です。
|
\Q
|
すべての非単語構成文字をエスケープ(前にバックスラッシュを挿入)します。
|
\r
|
復帰文字と一致します。
|
\s
|
空白、タブ、フォームフィードなどのあらゆる空白文字と一致します。[\f\n\r\t\v]と同じ意味です。
|
\S
|
空白文字以外のあらゆる文字と一致します。[^\f\n\r\t\v]と同じ意味です。
|
\t
|
タブ文字と一致します。
|
\u
|
次に続く文字を大文字に指定します。
|
\U
|
次に続く\Eメタ文字までの文字列を大文字に指定します。
|
\v
|
垂直方向の空白文字です。
|
\w
|
単語構成文字、英数字またはアンダースコアと一致します。
|
\W
|
単語構成文字以外、英数字以外およびアンダースコア以外と一致します。
|
\ddd
|
8進文字dddと一致します。
|
\xdd
|
16進文字ddと一致します。
|
\z
|
文字列の末尾の文字のみと一致します。
|
\Z
|
文字列の末尾の文字のみと一致します。文字列の末尾が改行の場合はその直前の文字と一致します。
|
メタ文字
|
説明
|
---|---|
\
|
次に続く文字を特殊文字、リテラル、前方参照、8進エスケープのいずれかにマークします。
|
|
|
英数字の文字列を比較する場合のor条件を指定します。たとえば、構成x|yはxまたはyのいずれかと一致します。
|
^
|
入力文字列の先頭の位置と一致します。
|
$
|
入力文字列の末尾の位置と一致します。
|
ピリオド(.)
|
改行文字以外のあらゆる1文字と一致します。改行文字も含むあらゆる文字と一致させるには、"[.\n]"などのパターンを使用します。
|
(pattern)
|
グループ化を指定します。patternと一致した文字列のキャプチャバッファを作成します。キャプチャされた一致の位置と長さを取得するには、CALL PRXPOSNを使用します。キャプチャバッファの値を取得するには、PRXPOSN関数を使用します。かっこと一致させるには、"\("または"\)"を使用します。
|
メタ文字
|
説明
|
---|---|
*
|
直前の副次式と0回以上一致します。
|
+
|
直前の副次式と1回以上一致します。
|
?
|
直前の副次式と0回または1回一致します。
|
{n}
|
n回以上一致します。
|
{n,}
|
n回以上パターンと一致します。
|
{n,m}
|
mおよびnは負でない整数です。n<=mです。少なくともn回、最大でm回一致します。
カンマと数の間には空白を入れません。
|
メタ文字
|
説明
|
---|---|
[...]
|
かっこで囲まれた文字のいずれかと一致する文字セットを指定します。
|
[^...]
|
かっこで囲まれていない文字と一致する負の文字セットを指定します。
|
[a-z]
|
文字の範囲を指定します。その範囲内の文字と一致します。
|
[^a-z]
|
文字の範囲を指定します。その範囲外の文字と一致します。
|
[[:alpha:]]
[[:^alpha:]]
|
英字と一致します。
英字以外の文字と一致します。
|
[[:alnum:]]
[[:^alnum:]]
|
英数字と一致します。
英数字以外の文字と一致します。
|
[[:ascii:]]
[[:^ascii:]]
|
ASCII文字と一致します。[\0–\177]と同じ意味です。
非ASCII文字と一致します。[^\0–\177]と同じ意味です。
|
[[:blank:]]
[[:^blank:]]
|
空白文字と一致します。
空白以外の文字と一致します。
|
[[:cntrl:]]
[[:^cntrl:]]
|
制御文字と一致します。
制御文字以外の文字と一致します。
|
[[:digit:]]
[[:^digit:]]
|
数字と一致します。\dと同じ意味です。
数字以外の文字と一致します。\Dと同じ意味です。
|
[[:graph:]]
[[:^graph:]]
|
空白文字以外の表示可能な文字です。[[:alnum:][:punct:]]と同じ意味です。
表示可能な文字ではありません。[^[:alnum:][:punct:]]と同じ意味です。
|
[[:lower:]]
[[:^lower:]]
|
小文字と一致します。
小文字と一致しません。
|
[[:print:]]
[[:^print:]]
|
文字列を印刷します。
文字列を印刷しません。
|
[[:punct:]]
[[:^punct:]]
|
句読点または表示可能な文字(空白および英数字以外)と一致します。
句読点または表示可能な文字(空白および英数字以外)と一致しません。
|
[[:space:]]
[[:^space:]]
|
空白と一致します。\sと同じ意味です。
空白と一致しません。\Sと同じ意味です。
|
[[:upper:]]
[[:^upper:]]
|
大文字と一致します。
大文字と一致しません。
|
[[:word:]]
[[:^word:]]
|
単語と一致します。\wと同じ意味です。
単語と一致しません。\Wと同じ意味です。
|
[[:xdigit:]]
[[:^xdigit:]]
|
16進文字と一致します。
16進文字と一致しません。
|
メタ文字
|
説明
|
---|---|
(?=...)
|
ゼロ幅の正の先読みアサーションを指定します。たとえば、正規表現regex1 (?=regex2)では、regex1とregex2の両方が一致する場合に一致と見なされます。regex2は最終的な一致には含まれません。
|
(?!...)
|
ゼロ幅の負の先読みアサーションを指定します。たとえば、正規表現regex1 (?!regex2)では、regex1が一致してregex2は一致しない場合に一致と見なされます。regex2は最終的な一致には含まれません。
|
(?<=...)
|
ゼロ幅の正の後読みアサーションを指定します。たとえば、正規表現(?<=regex1) regex2では、regex1とregex2の両方が一致する場合に一致と見なされます。regex1は最終的な一致には含まれません。固定幅の後読みのみで動作します。
|
(?<!...)
|
ゼロ幅の負の後読みアサーションを指定します。固定幅の後読みのみで動作します。
|
メタ文字
|
説明
|
---|---|
ST
|
次の例では、ABとA'B'を指定します。AとA'はSによって一致する部分文字列で、BとB'はTによって一致する部分文字列です。
|
S|T
|
Sが一致する場合、Tのみが一致する場合よりも適切な一致であることを指定します。Sに対する2つの一致の順序は、Sの順序と同じです。同様に、Tに対する2つの一致の順序は、Tの順序と同じです。
|
S{repeat-count}
|
SSS . . . ..S (必要な回数分繰り返す)と一致します。
|
S{min,max}
|
S{max}|S{max-1}| . . . ..|S{min+1}|S{min}と一致します。
|
S{min,max}?
|
S{min}|S{min+1}| . . . ..|S{max-1}|S{max}と一致します。
|
S?, S*, S+
|
それぞれS{0,1}、S{0, big-number}、S{1,big-number}と同じ意味です。
|
S??, S*?, S+
|
それぞれS{0,1}?、S{0, big-number}?、S{1,big-number}?と同じ意味です。
|
(?=S)、(?<=S)
|
Sに最適な一致を考慮します (これは、Sにキャプチャのかっこが含まれ、正規表現全体の他の場所で前方参照が使用されている場合にのみ重要です)。
|
(?!S)、(?<!S)
|
このグループ化演算子では、Sが一致するかどうかのみが重要なため、順序を記述する必要はありません。
|