このツールについて
RegexCheckは、あなたのコードと同じJavaScriptエンジンでパターンを実行します。ここで一致するものはNode.jsやすべてのブラウザでも一致します。入力と同時にハイライトされ、一致ごとにキャプチャグループが表示され、内訳表がパターンを分かりやすく解説します。
パターンは2秒でキルされるWeb Worker内で実行されるため、(a+)+$のような破滅的バックトラッキングの正規表現でもページはフリーズしません。すべてあなたの端末内で完結します。メール・URL・IPの定番パターンやチートシートもどうぞ。その他の無料ツールはdec0de.devへ。
このテスターはオフラインでも動作します。アプリとしてインストールすれば接続なしでも即座に起動します。マッチ結果を活用したいとき——ログから抽出、一致行の削除、後方参照での書き換え——姉妹ツールregexnow.comが同じエンジンで一括抽出・フィルタ・置換を行います。定番パターン集の各パターンはワンクリックでサンプルテキスト付きでここに開くので、実績あるパターンを微調整するだけで済みます。
よくある質問
このテスターはどの正規表現方言を使いますか?
JavaScript(ECMAScript)です。Node.jsとすべてのブラウザで動くエンジンそのものです。先読み・後読み・名前付きグループ・Unicodeプロパティエスケープは使えますが、PCRE固有の構文(強欲な量指定子やアトミックグループ)は使えません。
貼り付けたテキストはどこかにアップロードされますか?
いいえ。マッチングはブラウザ内のWeb Workerで完結します。入力・貼り付けた内容が端末の外に出ることはなく、インターネット接続がなくても動作します。
フラグ g・i・m・s・u は何を意味しますか?
g は最初の一致で止まらず全一致を検索、i は大文字小文字を無視、m は ^ と $ を各行の先頭・末尾に一致させ、s はドットを改行にも一致させ、u は \p{…} プロパティエスケープを含む完全なUnicode処理を有効にします。
なぜ「2秒で実行を強制終了」と表示されるのですか?
そのパターンはおそらく破滅的バックトラッキングを起こしています。(a+)+ のような入れ子の量指定子は、エンジンに指数関数的な数の経路を試させます。テスターはパターンをWeb Workerで実行し、2秒を超えた実行を強制終了するのでページはフリーズしません。怠惰な量指定子で書き換えるか、入れ子の繰り返しを取り除いてください。