/pattern/flags
| 文字 | 意味 |
|---|---|
| 文字クラス | |
|---|---|
| . | 改行文字(\n、\r、\u2028、あるいは、\u2029)を除いたあらゆる 1 文字にマッチする。 |
| \d | 数字にマッチする。[0-9] と同じ |
| \D | 数字以外の文字にマッチする。[^0-9] と同じ |
| \w | アンダースコアとアルファベットと数字にマッチする。[A-Za-z0-9_] と同じ |
| \W | アンダースコアとアルファベットと数字以外の文字にマッチする。[^A-Za-z0-9_] と同じ |
| \s | スペース、タブ、改ページ、改行、その他のユニコードでのスペースを含む空白文字 1 文字にマッチする。 [ \f\n\r\t\v\u00A0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF] と同じ |
| \S | スペース、タブ、改ページ、改行、その他のユニコードでのスペースを含む空白文字以外の 1 文字にマッチする。 [^ \f\n\r\t\v\u00A0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF] と同じ |
| \t | 水平タブにマッチする。 |
| \r | 復帰(CR)にマッチする。 |
| \n | 改行(LF)にマッチする。 |
| \v | 垂直タブにマッチする。 |
| \f | 改ページにマッチする。 |
| [\b] | バックスペースにマッチする。 |
| \0 | NUL 文字にマッチする。 |
| \cX | control-X にマッチする(X には A - Z のどれか 1 文字が入る)。 |
| \xhh | 2桁の 16進数 hh で表される文字にマッチする。 |
| \uhhhh | 4桁の 16進数 hhhh で表される UTF-16 の文字にマッチする。 |
| \x | x が特殊な意味を持つ文字のとき、本来の x という文字で使用したいとき指定する。 例えば、/a*/ は 0個以上の a を意味するが、それを a* という文字列として使用したいとき /a\*/ のように指定する。 |
| 文字集合 | |
| [xyz] | [ ] で囲まれた文字の中のどの 1 文字にもマッチする(ただし、3文字で真中が - のときは、範囲を表す)。 |
| [a-e] | [ ] で囲まれた文字で、- を挟む3文字の場合は範囲を表し、範囲中のどの 1 文字にもマッチする。 [a-e] は [abcde] と同じ |
| [^xyz] | [ ] で囲まれた文字以外のどの 1 文字にもマッチする(ただし、3文字で真中が - のときは、範囲を表す)。 |
| [^a-e] | [ ] で囲まれた文字で、- を挟む3文字の場合は範囲を表し、範囲外のどの 1 文字にもマッチする。 [^a-e] は [^abcde] と同じ |
| 代替 | |
| x|y | x またはy にマッチする。 |
| 境界 | |
| ^x | 先頭の x にマッチする。 |
| x$ | 終端の x にマッチする。 |
| \b | 文字とスペースの間のような、幅が 0 の 単語の区切りにマッチする。 例えば、\bon は "on the phone" の前側の on にマッチする。 |
| \B | 2 つの文字の間や 2 つのスペースの間のような、幅が 0 の単語の区切りではない部分にマッチする。 例えば、\Bon は "on the phone" の後側の on にマッチする。 |
| グループ化および後方参照 | |
| (x) | x にマッチし、マッチしたものをキャプチャグループに記憶する。 |
| \n | 正規表現内で n 番目の括弧でくくられた部分に該当する部分文字列を示す。 例えば、/a(,)b\1/ は "a,b,c,d" の a,b, にマッチする。 |
| (?:x) | x にマッチするが、マッチしたものはキャプチャグループに記憶しない。 |
| 量指定子 | |
| x* | 0 個以上のx にマッチする。 |
| x+ | 1 個以上のx にマッチする。 |
| x? | 1 個以下のx にマッチする。 |
| x{n} | n 個のx にマッチする。/x{3}/ は /xxx/ と同じ |
| x{n,} | n 個以上のx にマッチする。 |
| x{n,m} | n~m 個のx にマッチする。 |
| x*? x+? x?? x{n}? x{n,}? x{n,m}? | マッチする範囲が複数考えられる場合、最小の範囲にマッチする。 例えば、<span>~</span> に対して、/<.*>/ は、<span>~</span> 全体にマッチするが、 /<.*?>/ は、<span> にマッチする。 |
| アサーション | |
| x(?=y) | x に続いて y が現れる場合にのみ、x にマッチする。 |
| x(?!y) | x に続いて y が現れない場合にのみ、x にマッチする。 |
| (?<=w)x | x の前に w が現れる場合にのみ、x にマッチする。 |
| (?<!w)x | x の前に w が現れない場合にのみ、x にマッチする。 |
| 文字 | 意味 |
|---|---|
| g | 最初にマッチした1回だけでなく、複数回マッチする。 |
| i | 大文字・小文字の違いを無視してマッチする。 |
| m | 先頭および終端を示す文字 (^ や $) が、全体の先頭や終端ではなく、各行の先頭や終端にマッチする。 |