正規表現 チートシート
正規表現構文のクイックリファレンス。基本パターン、量指定子、アンカー、グループ、先読み/後読み、文字クラス、フラグ、よく使うパターンを網羅
62 件のコマンド
.任意の1文字にマッチ(改行以外)
a.c → abc, aXc\メタ文字をエスケープ
\. → literal dot|OR条件(いずれかにマッチ)
cat|dog → cat or dog\d数字 [0-9]
\d{3} → 123, 456\D数字以外
\D+ → abc, xyz\w英数字とアンダースコア [a-zA-Z0-9_]
\w+ → hello_world\W英数字・アンダースコア以外
\W → @, #, !\s空白文字(スペース、タブ、改行)
\s+ → spaces/tabs\S空白以外の文字
\S+ → hello\n改行文字
line1\nline2\tタブ文字
col1\tcol2*0回以上の繰り返し
ab*c → ac, abc, abbc+1回以上の繰り返し
ab+c → abc, abbc?0回または1回
colou?r → color, colour{n}ちょうどn回の繰り返し
\d{4} → 2024{n,}n回以上の繰り返し
\d{2,} → 10, 100, 1000{n,m}n回以上m回以下の繰り返し
\d{2,4} → 10, 100, 1000*?最短マッチ(0回以上)
<.*?> → <b> in <b>text</b>+?最短マッチ(1回以上)
".+?" → "a" in "a""b"??最短マッチ(0回または1回)
colou??r → color first^行頭にマッチ
^Hello → Hello at start$行末にマッチ
world$ → world at end\b単語の境界にマッチ
\bcat\b → cat (not cats)\B単語の境界以外にマッチ
\Bcat → concatenate\A文字列の先頭にマッチ
\AHello → Hello at very start\Z文字列の末尾にマッチ
end\Z → end at very end(pattern)キャプチャグループ
(\d{4})-(\d{2})-(\d{2})(?:pattern)非キャプチャグループ
(?:http|https)://(?<name>pattern)名前付きキャプチャグループ
(?<year>\d{4})-(?<month>\d{2})\1, \2, ...後方参照(n番目のグループ)
(\w+)\s\1 → the the\k<name>名前付き後方参照
(?<word>\w+)\s\k<word>(a|b)グループ内のOR選択
(cat|dog)s → cats, dogs(?=pattern)肯定先読み(後に続くか確認)
\d+(?= dollars) → 100 in "100 dollars"(?!pattern)否定先読み(後に続かないか確認)
\d+(?! dollars) → 100 in "100 yen"(?<=pattern)肯定後読み(前にあるか確認)
(?<=\$)\d+ → 50 in "$50"(?<!pattern)否定後読み(前にないか確認)
(?<!\$)\d+ → 50 in "50 items"[abc]いずれか1文字にマッチ
[aeiou] → vowels[^abc]指定文字以外にマッチ
[^0-9] → non-digits[a-z]小文字のアルファベット
[a-z]+ → hello[A-Z]大文字のアルファベット
[A-Z]+ → HELLO[0-9]数字
[0-9]{3} → 123[a-zA-Z]全アルファベット
[a-zA-Z]+ → Hello[a-zA-Z0-9]英数字
[a-zA-Z0-9]+ → abc123[\s\S]改行を含む任意の文字
[\s\S]* → everythinggグローバル検索(全マッチ)
/cat/g → all 'cat' occurrencesi大文字小文字を区別しない
/hello/i → Hello, HELLOm複数行モード(^$が各行に適用)
/^start/m → each line startsドットが改行にもマッチ
/a.b/s → a\nbuUnicodeモード
/\p{L}/u → Unicode lettersx拡張モード(空白とコメントを無視)
/\d{3} # area code/xEmailメールアドレスの検証
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}URLURLの検証
https?://[\w.-]+(?:\.[\w]{2,})(?:/[\w./?%&=-]*)?IPv4IPv4アドレスの検証
\b(?:\d{1,3}\.){3}\d{1,3}\bDate (YYYY-MM-DD)日付形式の検証
\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])Phone (Japan)日本の電話番号
0\d{1,4}-\d{1,4}-\d{4}Phone (US)米国の電話番号
(?:\+1[-.\s]?)?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}Password (Strong)強力なパスワード(8+文字、大小英数記号)
(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}HTML TagHTMLタグにマッチ
<\/?[a-z][a-z0-9]*[^>]*>Hex Color16進数カラーコード
#(?:[0-9a-fA-F]{3}){1,2}\bUUIDUUIDの検証
[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}Whitespace Trim前後の空白を除去
^\s+|\s+$Duplicate Words重複単語を検出
\b(\w+)\s+\1\b