正規表現テスター
正規表現のテストとマッチング結果を視覚化
正規表現パターンをリアルタイムでテストし、マッチング箇所を視覚的に確認できます。 フラグ設定やマッチ詳細の確認も可能な開発者向けツールです。
正規表現の設定
マッチ結果(一致した箇所)
一致する箇所がありません
正規表現 クイックリファレンス
文字
.任意の1文字\d数字 (0-9)\w単語構成文字\s空白文字量指定子(繰り返し)
*0回以上の繰り返し+1回以上の繰り返し?0回または1回{n}ちょうどn回の繰り返しアンカー(位置指定)
^行の先頭$行の末尾\b単語の境界|いずれか(OR)実際の使用例
CSVデータの解析
カンマ区切りのデータから特定の列を抽出
INPUT
id,name,email 1,田中,tanaka@example.com 2,佐藤,sato@example.com
OUTPUT
各行のメールアドレス部分にマッチ
HTMLタグの属性置換
特定の属性を持つタグを検索
INPUT
<a href="https://example.com" target="_blank">Link</a>
OUTPUT
hrefの内容をキャプチャグループで保持
よくある質問
「g」(global)は全マッチ検索(2番目以降も探す)、「i」(ignore case)は大文字小文字を区別しない、「m」(multiline)は `^` と `$` を各行の先頭と末尾に適用させるフラグです。
ブラウザ上で動作しているため、JavaScript(ECMAScript)の正規表現エンジンに基づいています。他言語(Python, PHP, Javaなど)とは細かな仕様(後読み、名前付きグループなど)が異なる場合がありますが、基本的な構文は共通です。
特殊文字(`?` `*` `+` `.` `[` `]` `(` `)`など)を通常の文字として扱いたい場合に、エスケープ(`\` を前に付ける)を忘れていることがよくあります。また、フラグの設定ミスも原因になります。
はい、マッチ詳細の「Groups」セクションに表示されます。`(pattern)` のように括弧で囲った部分が個別に抽出されるため、データの特定部分を抽出するスクリプトのテストに便利です。
非常に複雑な正規表現(特にバックトラッキングが多く発生するもの)を巨大なテキストに対して実行すると、ブラウザが一時的にフリーズすることがあります。テストの際は少しずつパターンを構築することをお勧めします。
役立つTips
非キャプチャグループの使用
グループ化はしたいがキャプチャは不要な場合は `(?:pattern)` を使用してください。メモリ使用量を抑え、マッチング速度を向上させることができます。
最短一致(控えめなマッチ)
`*` や `+` はデフォルトで最長一致ですが、後ろに `?` を付けて `*?` や `+?` とすることで、最小限の範囲でマッチさせることができます。HTMLタグの抽出などに有効です。
エスケープの自動化
文字列を動的に正規表現に含める場合は、特殊文字をすべてエスケープする必要があります。本テスターでパターンを確認した後、コードに組み込む際は注意してください。
文字クラスの活用
単一の文字にマッチさせたい場合は `[a-z0-9]` のような文字クラスが便利です。否定の文字クラス `[^...]` も活用してパターンを簡潔にしましょう。