アンカー
| トークン | 意味 | 例 |
^ | 文字列の先頭(m フラグで行頭) | ^Hello |
$ | 文字列の末尾(m フラグで行末) | world$ |
\b | 単語境界 | \bcat\b |
\B | 単語境界以外 | \Bcat |
文字クラス
| トークン | 意味 | 例 |
. | 改行以外の任意の1文字 | a.c |
\d | 任意の数字 0〜9 | \d\d |
\D | 数字以外の任意の文字 | \D+ |
\w | 任意の単語構成文字(a–z, A–Z, 0–9, _) | \w+ |
\W | 単語構成文字以外の任意の文字 | \W |
\s | 任意の空白文字 | a\sb |
\S | 空白以外の任意の文字 | \S+ |
[abc] | 集合内のいずれか1文字 | [aeiou] |
[^abc] | 集合に含まれない任意の1文字 | [^0-9] |
[a-z] | a〜z の範囲内の任意の文字 | [A-Z] |
量指定子
| トークン | 意味 | 例 |
* | 直前要素の 0 回以上 | ab* |
+ | 直前要素の 1 回以上 | ab+ |
? | 直前要素の 0 回または 1 回(任意) | ab? |
{n} | 直前要素のちょうど n 回 | \d{4} |
{n,} | 直前要素の n 回以上 | \d{2,} |
{n,m} | 直前要素の n〜m 回 | \d{2,4} |
*? | 最短一致(できるだけ少なくマッチ) | <.*?> |
グループと先読み・後読み
| トークン | 意味 | 例 |
(abc) | キャプチャグループ | (\d+) |
(?:abc) | キャプチャしないグループ | (?:ab)+ |
(?<name>) | 名前付きキャプチャグループ | (?<year>\d{4}) |
a|b | 選択 — a または b | cat|dog |
(?=abc) | 肯定先読み | \d(?=px) |
(?!abc) | 否定先読み | \d(?!px) |
(?<=abc) | 肯定後読み | (?<=\$)\d+ |
(?<!abc) | 否定後読み | (?<!\$)\d+ |
\1 | グループ1への後方参照 | (\w)\1 |
特殊文字とエスケープ
| トークン | 意味 | 例 |
\. | リテラルのドット(特殊文字のエスケープ) | 3\.14 |
\uXXXX | コードポイント指定の Unicode 文字 | é |
フラグ
| トークン | 意味 | 例 |
g | global — すべてのマッチを検索 | /\d+/g |
i | 大文字小文字を区別しない | /abc/i |
m | multiline — ^ と $ が行境界にもマッチ | /^x/m |
s | dotAll — . が改行にもマッチ | /a.b/s |
u | Unicode モード | /\u{1F600}/u |
y | sticky — lastIndex からのみマッチ | /\d/y |