正規表現の構文

正規表現を作成すると複雑な検索をすることができます。
正規表現説明
a文字a
abc文字列abc
[abc]文字a,b,cのいずれか
[a-c]文字a~cのいずれか
[^abc]文字abcのいずれでもない
.任意文字
abc|def文字列abc、文字列def
^a行頭がa
a$行末がa
a*aが0文字以上。最大マッチング
a+aが1文字以上。最大マッチング
a?aが0文字または1文字。最大マッチング
a{n}aがn個。最少マッチング
a{n,}aがn個以上。最少マッチング
a{n,m}aがn個~m個。最少マッチング
[¥b]バックスペース
(?:a)文字a。ただし$1...$n参照から除外
a(?=b)aに続いてb aにマッチ
a(?!b)aに続いてbでない場合 aにマッチ
¥0NUL
¥b単語の区切り
¥B¥b以外
¥cXCtrl-X XはA-Zのいずれか
¥d半角数字[0-9]
¥D¥d以外
¥f改ページ
¥n改行
¥r復帰
¥s区切り文字
¥S¥s以外
¥t水平TAB
¥v垂直TAB
¥w_を含む半角英数[A-Za-z0-9_]
¥W¥w以外
¥nn番目にマッチした文字列
¥xhhh16進数hhh
¥その他その他の文字自身

フラグ

フラグ説明
g2番目以降も検索する。
i大文字小文字を区別しない
m複数行に対応
uUnicodeのサロゲートペア文字も1文字として扱う
ylastIndexで指定した位置からのみ検索

記述例


マッチした文字
"12:34:56"を正規表現¥d+で検索すると "12" "34" "56"にマッチ(1個以上にマッチするように指定した場合)
"123 printf"を正規表現^¥d+¥s*で検索すると"123 "にマッチ
"   printf"を正規表現^¥s*を正規表現¥d+で検索すると"   "にマッチ
"printf //abcde"を正規表現¥/¥/.*$を正規表現¥d+で検索すると"//abcde"にマッチ