菊丸ツゥルズ

正規表現テスター

正規表現の一致結果、位置、キャプチャグループをブラウザ内だけで確認できます。

入力データはサーバーへ送信されません。長大入力や重いパターンは安全のため制限しています。

入力

スラッシュは不要です。例: \d+(?<name>\w+)
利用可能: g i m s u。一覧表示のため g は自動付与されます。

結果

パターンとテキストを入力して「テスト実行」を押してください。

使い方とAIO呼び出し

  • 正規表現パターン、フラグ、テスト文字列を入力すると、一致位置とキャプチャグループを確認できます。
  • URLクエリ例: regex_tester.html?pattern=%5Cd%2B&input=abc123&flags=g&format=json
  • format=json は機械可読JSON、format=raw は結果テキストのみを表示します。

ReDoS対策として、入れ子の量指定子など重くなりやすいパターンは実行前に止めます。必要ならパターンを単純化してお試しください。

正規表現テスターは、正規表現パターンとテスト文字列をブラウザ内で照合し、一致箇所・文字インデックス・キャプチャグループを即座に確認できるツールです。バリデーション用の正規表現を組み立てているエンジニア、ログから特定の文字列を抽出したい運用担当者、正規表現の挙動を学習中の初心者など、パターンが思い通りに動くかをすぐに検証したい人のためのツールです。重い処理になりやすいパターンには実行前に制限がかかるため、安全に試行錯誤できます。

使い方・サンプル・結果例・注意点

使い方

「正規表現パターン」と「フラグ」、「テスト文字列」を入力して「テスト実行」を押すと、一致箇所とキャプチャグループが結果欄に表示されます。

サンプル入力

パターン: (\w+)@(\w+\.\w+) フラグ: g テスト文字列: お問い合わせは admin@example.com または support@example.co.jp までご連絡ください。

結果例

上記を実行すると、「admin@example.com」と「support@example.co.jp」の2件がマッチとして検出され、それぞれインデックス位置とともに、グループ1(ユーザー名部分: admin / support)、グループ2(ドメイン部分: example.com / example.co.jp)に分解されたキャプチャグループの内容が一覧表示されます。

注意点

一覧表示のために常に g フラグが自動付与されます。また、入れ子の量指定子(例: (a+)+ のようなパターン)などReDoS(正規表現サービス拒否)の原因になりやすいパターンは、ブラウザが固まるのを防ぐため実行前に検出してブロックされます。該当した場合はパターンを単純化して再実行してください。フラグはJavaScriptの正規表現エンジンに準拠し、g・i・m・s・uに対応しています。

こんなときに使えます

  • バックエンドエンジニアが、メールアドレスや電話番号のバリデーション用正規表現を実装前にテストする
  • インフラ担当者が、サーバーログから特定のIPアドレスやエラーコードを抽出するパターンを検証する
  • プログラミング学習者が、正規表現の構文(量指定子・グループ・先読みなど)の動作を実際の文字列で確認しながら学ぶ
  • データ整形作業者が、CSVやテキストデータから不要な文字列を一括置換する前にマッチ範囲を確認する

よくある質問

対応している正規表現フラグは何ですか?

g(グローバル)、i(大文字小文字を区別しない)、m(複数行モード)、s(dotallモード、.が改行にもマッチ)、u(Unicodeモード)の5種類に対応しています。一覧表示のためgは常に有効になります。

名前付きキャプチャグループ((?<name>...))は使えますか?

はい、JavaScriptの正規表現がサポートする名前付きキャプチャグループの構文をそのまま使用でき、結果にグループ名とともに一致内容が表示されます。

パターンの実行が止められた(ブロックされた)のはなぜですか?

入れ子になった量指定子など、入力長によって処理時間が指数的に増大しブラウザが固まる可能性があるパターンを検出した場合、安全のため実行前にブロックします。パターンをより単純な形に書き換えてお試しください。

結果をJSON形式で取得することはできますか?

はい。URLクエリにformat=jsonを指定してアクセスすると、一致結果やキャプチャグループを含む機械可読なJSONが取得できます。format=rawの場合は結果テキストのみが返されます。

入力したテスト文字列は外部に送信されますか?

いいえ。パターンの照合処理はすべてブラウザ内のJavaScriptで実行され、テスト文字列やパターンがサーバーへ送信されることはありません。