正規表現テスト

JavaScript の正規表現パターンとテスト文字列—マッチ・キャプチャ・インデックス範囲をリアルタイム表示。モダンブラウザと同じ RegExp エンジン。

正規表現テストについて

JavaScript の RegExp パターンとテスト文字列を入力すると、一致・キャプチャグループ・位置がリアルタイム更新。ブラウザと同じ ECMAScript エンジン(PCRE/.NET ではありません)。

JSON 行から orderId、access log から IP/HTTP ステータス、メール/URL の試行、HTML 断片の href 確認など、IDE を開かずに検証できます。

できること

パターンとフラグ

パターン欄に / で囲まない本文のみ。g/i/m/s/u/y はボタンで切替。g は非重複の全一致、m は ^/$ を行単位に。

一致一覧とグループ

  1. グループ 0 は全体一致、1 以降はキャプチャ括弧の順。
  2. 名前付き (?<name>…) は u フラグ時に名称表示。
  3. 各行に 0 始まりの start–end インデックス。

ハイライト

パターンが有効で両欄に内容があると、長文貼り付けでも誤一致を目視しやすくハイライトします。

フラグ説明とレシピ

フラグ下に g/i/m/s/u/y の説明。さらに下にメール・URL・UUID・日付・IPv4・クエリ id 等のコピー用例(自動入力はしません)。

他言語との差

先読み・命名グループ・Unicode プロパティは ECMAScript 準拠。PHP/Java からのコピーは書き換え後にここで再テストを。

よくある使い方

アクセスログ

nginx 行に (\d+\.\d+\.\d+\.\d+).*?" (\d{3}) — グループ1 が IP、グループ2 が HTTP ステータス(ログ形式要一致)。

JSON フィールド

"orderId"\s*:\s*"([^"]+)" で 1 行レスポンスを parse せず確認。

ログ内 UUID

RFC 4122 形 + g で correlation id を洗い出し、本番パーサ前に目視。

HTML href

href="([^"]+)" を a 断片に当て、クローラ/サニタイザ前の確認。

よくある質問

正規表現をオンラインで試すには?
パターン欄とテスト文字列を入力し、フラグを本番に合わせる。有効なら件数・ハイライト・各グループ値が出ます。
/スラッシュ/ で囲む?
いいえ。JS リテラルではスラッシュの内側だけを入力し、フラグはボタンで。
Python では動くのにここでダメ?
JavaScript RegExp のみ。エスケープ、(?<name>) 写法、フラグが異なります。
グループ 0 とは?
マッチ全体。1 が第一キャプチャ、RegExp.exec と同じ番号付け。
regex101 と結果が違う?
g/m、コードから貼った \ の層、エンジンが PCRE か ECMAScript かを確認。
置換は試せる?
本版は一致・キャプチャの確認中心。replace はアプリや別ツールで。

パターン例(「正規表現」欄へ)

  • [\w.+-]+@[\w.-]+\.\w+緩いメール — 大文字混在なら gi
  • https?://[^\s"'<>]+本文・ログ内 URL(g)
  • [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}UUID 形(g)
  • \d{4}-\d{2}-\d{2}yyyy-MM-dd
  • \b(?:\d{1,3}\.){3}\d{1,3}\bIPv4 形(0–255 厳密ではない)
  • [?&]id=([^&]+)クエリ最初の id=(グループ1)