2.9 正規表現仕様書


文字 説明 正規表現の例 マッチする文字列
  文字種
. 改行(CR/LF)以外の1文字にマッチ ABC.E ABCDE
\a BEL(0x07)にマッチ
\b BS(0x08)にマッチ
\t HT(0x09)にマッチ
\n LF(0x0A)にマッチ
\v VT(0x0B)にマッチ
\f FF(0x0C)にマッチ
\r CR(0x0D)にマッチ
\e ESC(0x1B)にマッチ
\d 0から9までの数値にマッチ
\D 0から9までの数値以外にマッチ
\h "[0-9A-Fa-f]"に内部で展開。16進数の文字にマッチ    
\H "[^0-9A-Fa-f]"に内部で展開。16進数の文字以外にマッチ     
\s スペース以下の文字にマッチ
\S スペース以下以外の文字にマッチ
\w "[A-Za-z0-9_]"に内部で展開
\W "[^A-Za-z0-9_]"に内部で展開
\y "^|\s+"に内部で展開。スペース以下文字列にマッチ
\Y "$|\S+"に内部で展開。スペース以下以外の文字列にマッチ
\000 8進数表現(0-377)にマッチ
\o0000 8進数表現(0-3777777)にマッチ
\x00 16進数表現(0-FF)にマッチ
\u0000 16進数表現(0-FFFFFF)にマッチ
\oxu{0 ...} 8/16進数表現の文字列にマッチ \x{30 31 32 33} 0123
\c-X A-Zをコントロールコード(00-1F)に変換してマッチ \c-A
\.+*?[({|\ 特殊文字にマッチ \\ \
[…] 括弧内のいずれかの1文字にマッチ ABC[DX]E ABCXE
[^…] 括弧内のいずれかの1文字以外にマッチ ABC[^DX]E ABCYE
[A-Z] AからZまでにマッチ ABC[X-Z]E ABCYE
[-Z] Zまでにマッチ [-Z]+ ABCXYZ
[A-] Aからにマッチ [A-]+ ABCXYZ
[-] すべての文字にマッチ [-]+ 012ABCXYZ
  位置指定
^ 行頭にマッチ(条件によりLFで判断)
$ 行末にマッチ(条件によりCRで判断)
…(?=…) 先読みマッチ ABC(?=XYZ) ABCXYZ
…(?!…) 先読み否定マッチ
(?<=…)… 後読みマッチ (?<=ABC)XYZ ABCXYZ
(?<!…)… 後読み否定マッチ
\A "^|(?<=\s+)"に内部で展開。行頭、文字列の先頭にマッチ
\Z "$|(?=\s+)"に内部で展開。行末、文字列の末尾にマッチ
\z "(?=\s+)"に内部で展開。文字列の末尾にマッチ
  繰り返し指定
+ 直前の文字が1回以上の繰り返し(最大1024)にマッチ ABCD+E ABCDDE
* 直前の文字が0回以上の繰り返し(最大1024)にマッチ ABCD*E ABCE
? 直前の文字が0個か1個にマッチ ABC?E ABCDE
{n} 直前の文字が指定回数の繰り返し(最大1024)にマッチ ABCD{3}E ABCDDDE
{n,m} 直前の文字がn回以上m回以下の繰り返し(最大1024)にマッチ ABCD{3,5}E ABCDDDDE
+? 直前の文字が1回以上の繰り返しにマッチ(最小一致)
*? 直前の文字が0回以上の繰り返しにマッチ(最小一致)
?? 直前の文字が0個か1個にマッチ(最小一致)
{n}? 直前の文字が指定回数の繰り返しにマッチ(最小一致)
{n,m}? 直前の文字がn回以上m回以下の繰り返しにマッチ(最小一致)
++ 直前の文字が1回以上の繰り返しにマッチ(最大一致)
*+ 直前の文字が0回以上の繰り返しにマッチ(最大一致)
?+ 直前の文字が0個か1個にマッチ(最大一致)
{n}+ 直前の文字が指定回数の繰り返しにマッチ(最大一致)
{n,m}+ 直前の文字がn回以上m回以下の繰り返しにマッチ(最大一致)
{m,n} 直前の文字がn回以上m回以下の繰り返しにマッチ(最大一致)
  グループ化
(…) グループにまとめて参照 (ABC)(XYZ) ABCXYZ
(?:…) グループにまとめる
(?>…) グループにまとめて参照(最大一致)
(?i) (?-i) 英字の大文字・小文字の区別をする(?i)しない(?-i)を指定します
(?#…) コメント
…|… いずれかの条件にマッチ ABC|XYZ ABC