概要
正規表現(RegEx)の基本的なパターンや記述方法を一覧化しました。
検索・置換・データ抽出・バリデーションに役立つチートシートです。
正規表現(RegEx)とは
正規表現(Regular Expression)は、文字列のパターンを表現するための特殊な記述方法です。
プログラムやテキストエディタ、検索機能などで広く使用されます。
正規表現(RegEx)チートシート
以下に、主要な正規表現のパターンと用途をまとめました。
パターン | 意味 | 例 |
^ |
行の先頭 | ^Hello → “Hello” で始まる |
$ |
行の末尾 | World$ → “World” で終わる |
. |
任意の1文字 | a.b → “acb”, “a9b” などにマッチ |
* |
直前の文字が0回以上 | ab*c → “ac”, “abc”, “abbc” など |
+ |
直前の文字が1回以上 | ab+c → “abc”, “abbc”(”ac” は対象外) |
? |
直前の文字が0回または1回 | colou?r → “color”, “colour” |
{n,m} |
直前の文字をn回以上m回以下 | a{2,4} → “aa”, “aaa”, “aaaa” |
[] |
文字クラス(指定した文字のいずれか) | [abc] → “a”, “b”, “c” のいずれか |
[^] |
否定の文字クラス | [^abc] → “a”, “b”, “c” 以外の1文字 |
\\d |
数字([0-9]と同じ) | \\d+ → “123”, “42” など |
\\D |
数字以外 | \\D+ → “abc”, “#$%” など |
\\w |
単語(英数字とアンダースコア) | \\w+ → “word”, “user_123” |
\\W |
単語以外 | \\W+ → “?!@”, ” ” など |
\\s |
空白文字(スペース, タブ, 改行) | \\s+ → ” “, “\\t”, “\\n” |
\\S |
空白文字以外 | \\S+ → “abc123” |
(...) |
グループ化 | (abc)+ → “abc”, “abcabc” |
| |
または(OR) | cat|dog → “cat” か “dog” |
\\b |
単語の境界 | \\bword\\b → “word” のみ |
\\B |
単語の境界以外 | \\Bword\\B → “password” など |
\\1, \\2... |
キャプチャしたグループの再利用 | (word)\\1 → “wordword” |
正規表現の活用例 20パターン
- 1. メールアドレスの検出 →
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}
- 2. 電話番号の検出(ハイフンあり) →
\d{2,4}-\d{2,4}-\d{4}
- 3. 日本の郵便番号の検出(000-0000形式) →
\d{3}-\d{4}
- 4. URLの検出 →
https?://[\w.-]+(?:\.[a-zA-Z]{2,})+
- 5. IPv4アドレスの検出 →
\b(?:\d{1,3}\.){3}\d{1,3}\b
- 6. 日付(YYYY-MM-DD形式)の検出 →
\d{4}-\d{2}-\d{2}
- 7. 日本の日付(YYYY/MM/DD形式)の検出 →
\d{4}/\d{2}/\d{2}
- 8. 時間(HH:MM:SS形式)の検出 →
\b\d{2}:\d{2}:\d{2}\b
- 9. クレジットカード番号(16桁)の検出 →
\b\d{4}[- ]?\d{4}[- ]?\d{4}[- ]?\d{4}\b
- 10. 半角カタカナの検出 →
[\uFF61-\uFF9F]+
- 11. 全角カタカナの検出 →
[\u30A0-\u30FF]+
- 12. ひらがなの検出 →
[\u3040-\u309F]+
- 13. 半角英数字のみを検出 →
^[a-zA-Z0-9]+$
- 14. 全角文字の検出 →
[^\x01-\x7E]+
- 15. HTMLタグの削除 →
<[^>]+>
- 16. 先頭と末尾の空白削除(トリミング) →
^\s+|\s+$
- 17. 重複スペースの削除 →
\s{2,}
- 18. 先頭の特定文字(例:「#」)を検出 →
^#.*
- 19. 数字のみを抽出 →
\d+
- 20. 特定の拡張子(例: .jpg, .png, .gif)のファイルを検出 →
.*\.(jpg|png|gif)$
参考リンク
ありがとうございます
コメント