正規表現テスター
JavaScript正規表現のマッチ結果を確認できます。g / i / m フラグ切替に対応し、必要に応じて置換モードで置換結果と件数も確認できます。
/abc/g 形式は非対応です。パターンは abc で入力し、フラグは下のチェックで設定してください。
置換モード(任意)
g がONなら全件置換、OFFなら先頭一致のみ置換します。
マッチ結果
マッチ件数: 0
使用フラグ: g
マッチ結果はありません。
入力データは原則ブラウザ内で処理します。機密情報は入力しないでください。
使い方
- パターン(abc形式)とテスト文字列を入力します。
- g / i / m フラグを切り替えて「解析する」を押します。
- 必要に応じて置換モードを有効にし、置換結果と件数を確認します。
判断基準
まず最小パターンで単一一致を確認し、次にフラグ(g/i/m)を段階的に増やす手順で検証すると、 過剰マッチや見落としを防ぎやすくなります。
よくある失敗
- `.` をそのまま使い、改行以外すべてに一致して意図外ヒットが増える。
- gフラグOFFで全件確認したつもりになり、1件目だけで判断する。
- 置換モードで空文字マッチを使い、想定外の大量置換を発生させる。
境界条件
- 対応フラグは g/i/m のみで、u/s/y などはこのUIでは扱いません。
- 一般的には実行環境(Node/ブラウザ)差で挙動が異なるケースがあります。
- 本番利用前は対象環境の実コードでも再確認してください。
具体例
- 入力: パターン `\\d+`、文字列 `ID: 123`。出力: `123` を一致結果として抽出。
- 入力: パターン `https?:\\/\\/[^\\s]+`、URL混在文。出力: 文中URLを複数件抽出。
注意点
- JavaScript正規表現の仕様に基づいて動作します。
- /abc/g 形式は非対応です。abc を入力してフラグを選択してください。
- gフラグ時の0文字マッチは無限ループ回避処理を行います。
- 入力内容がURLクエリに含まれるため、共有時は機密文字列を含めないでください。
失敗しやすいパターン例
想定外の全体一致を作る
`.` や `.*` を広く使うと意図しない範囲までマッチします。
例: 入力例: a.*b / 出力: 最長一致で中間文字列をまとめて取得
エスケープ不足で記号を誤解釈させる
`.` `?` `+` などはメタ文字として解釈されます。
例: 判断ポイント: リテラル記号は `\.` のように明示エスケープ
境界値・例外ケース
gフラグ有無で結果件数が変わる
gなしは先頭一致のみ、gありは全件一致を返します。
例: 入力例: /\d+/ と g有効時で件数比較
空文字マッチの連続発生
一部パターンは空文字にも一致し件数が多く見える場合があります。
例: 判断ポイント: 空文字マッチ表示を確認して意図を見直す
よくあるミス
テスター結果を他言語でも同一とみなす
実行環境ごとに正規表現仕様差があります。
例: 運用例: 本番言語ランタイムでも同パターン再検証
置換モードで置換回数を確認しない
意図以上の置換が発生しても見落としやすくなります。
例: 判断ポイント: 置換件数と差分を合わせて確認
FAQ
フラグは何が使えますか?
g / i / m の3種類に対応しています。
置換モードでは何件置換されますか?
g がONなら全件、OFFなら先頭一致のみ置換します。
スラッシュ付きの /pattern/flags 形式で入力できますか?
できません。パターン本体のみ入力し、フラグはチェックボックスで指定してください。
基本FAQ
入力データは外部へ送信されますか?
原則として送信されません。入力内容はブラウザ内で処理します。例外がある場合は各ツールページ内に明記しています。
入力内容は自動保存されますか?
原則として自動保存しません。コピーやダウンロードで保存する場合は、ご利用端末内に保存されます。
関連ツール
現在の入力内容とあわせて確認しやすいツールです。