N
nob@lit-forge
正規表現 早見表(JavaScript / POSIX 両対応)
正規表現のメタ文字・量指定子・グループ・先読み後読み・フラグを一枚にまとめた早見表。JavaScript 互換の書き方を中心に、よくある検索パターン(URL・メール・日付・全角半角)の実例付き。
#正規表現#regex#JavaScript#早見表
基本メタ文字
| 記号 | 意味 | 例 |
|---|---|---|
. | 改行以外の任意の 1 文字 | a.c → abc, a1c |
^ | 行頭 | ^Hello |
$ | 行末 | end$ |
\d | 数字 [0-9] | \d+ → 1 以上の数字列 |
\D | 数字以外 | — |
\w | 単語文字 [A-Za-z0-9_] | — |
\W | 単語文字以外 | — |
\s | 空白(半角/改行/タブ) | — |
\S | 空白以外 | — |
\b | 単語境界 | \bword\b |
量指定子
| 記号 | 意味 | 例 |
|---|---|---|
* | 0 回以上 | ab* → a, ab, abb… |
+ | 1 回以上 | ab+ → ab, abb… |
? | 0 or 1 回(省略可) | colou?r → color, colour |
{n} | ちょうど n 回 | a{3} → aaa |
{n,} | n 回以上 | a{2,} |
{n,m} | n〜m 回 | a{1,3} → a, aa, aaa |
*? 等 | 最短一致(非貪欲) | <.+?> |
文字クラス
| 記号 | 意味 |
|---|---|
[abc] | a, b, c のいずれか |
[^abc] | a, b, c 以外 |
[a-z] | a〜z |
[0-9A-F] | 16 進数文字 |
[あ-ん] | ひらがな |
グループと参照
| 記号 | 意味 | 例 |
|---|---|---|
(...) | キャプチャグループ | (ab)+ |
(?:...) | 非キャプチャ | (?:ab)+ |
(?<name>...) | 名前付きグループ | (?<year>\d{4}) |
\1 | 1 番目のグループを参照 | (\w+)\s\1 → 重複語 |
先読み・後読み
| 記号 | 意味 | 例 |
|---|---|---|
(?=...) | 肯定先読み | Hello(?=World) |
(?!...) | 否定先読み | Hello(?!World) |
(?<=...) | 肯定後読み | (?<=\$)\d+ |
(?<!...) | 否定後読み | (?<!\$)\d+ |
フラグ(JavaScript)
| フラグ | 意味 |
|---|---|
g | 全マッチ(グローバル) |
i | 大文字小文字を無視 |
m | 複数行モード(^/$ が改行にマッチ) |
s | . が改行にもマッチ |
u | Unicode モード |
y | Sticky(lastIndex から開始) |
よく使うパターン
メールアドレス(簡易)
/^[^\s@]+@[^\s@]+\.[^\s@]+$/
URL(http/https)
/^https?:\/\/[\w\-.~:/?#\[\]@!$&'()*+,;=%]+$/i
日本の郵便番号(ハイフン任意)
/^\d{3}-?\d{4}$/日付 YYYY-MM-DD
/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/全角→半角ヒット(全角英数)
/[A-Za-z0-9]/