Regex Tester
テキストに対して正規表現をテストする
- #1 @12: [email protected]
- #2 @33: [email protected]
なぜブラウザで正規表現をテストするのか?
正規表現エンジンは言語ごとに微妙に異なります:PCRE (PHP)、POSIX (grep)、Perl、Pythonの`re`、JavaScriptのregexは異なる機能セットを持っています。ブラウザでのテストはJavaScriptエンジンを使用します — クライアントサイドコード、Node.js、またはInertiaのバリデーションルールで実行されるものと同じです。
テスターは入力中にマッチをハイライトし、マッチごとにキャプチャグループをリスト表示し、現在有効な正規表現フラグを表示します。悪いパターンは静かに失敗するのではなく、明確な構文エラーを示します。
使用例
- ログからフィールドを抽出 — プルリクエストID、IP、または非構造化ログ行からのタイムスタンプを取得します。
- ユーザー入力を検証 — フォームを送信する前にメールアドレス、郵便番号、または電話番号をチェックします。
- バルク検索と置換 — ソースコードやマークダウンのペーストをスイープして、キャプチャグループプレースホルダーを持つパターンの名前を変更します。
- 機密データをスクラブ — スクリーンショットを共有する前に、ログからメールアドレス、JWT、またはクレジットカード番号を削除します。
例
Pattern: \b([\w.]+)@([\w.]+)\.([a-z]{2,})\b
Flags: gi
Text: Contact [email protected] or [email protected]Match 1: [email protected]
Group 1: alice
Group 2: example
Group 3: com
Match 2: [email protected]
Group 1: bob
Group 2: test
Group 3: orgよくある質問
どの正規表現フレーバーがサポートされていますか?
JavaScript / ECMAScriptの正規表現。最新のブラウザでのルックビハインド、名前付きグループ(`(?<name>...)`)、Unicodeモード(`u`フラグ)、およびスティッキーマッチング(`y`フラグ)をサポートしています。
なぜ私のPCREパターンは機能しないのですか?
PCREにはJavaScriptの正規表現にはない機能があります:再帰パターン、所有量子、条件付きパターン。JavaScriptはほとんどの日常的なニーズをカバーしますが、これらの高度なケースには対応していません。
キャプチャグループはどのように機能しますか?
パターンの一部を囲む括弧は、番号付きキャプチャグループを作成します。マッチ内では、グループ1が最初の`(...)`、グループ2が2番目、などです。非キャプチャグループには`(?:...)`を使用します。
無限ループの正規表現はブラウザをフリーズさせますか?
壊滅的なバックトラッキングはタブを一時的にフリーズさせることがあります。テスターはあなたのタブで実行されるため、悪いパターンはこのツールにのみ影響します — 必要に応じて閉じて再オープンしてください。
私のパターンやテストテキストはアップロードされますか?
いいえ — 両方ともブラウザ内に留まります。
