正規表現テスター 🔒 データがブラウザの外に出ることはありません。
リアルタイムハイライトでパターンをテスト。Web Workerでフリーズ防止。
| # | 一致文字列 | 位置 | キャプチャ |
|---|
キャプチャ組には $1, $2、名前付き組には $<name> を使います。
このツールについて
このテスターは、あなたのコードと同じJavaScriptエンジンでパターンを実行します。ここで一致すればNode.jsやすべてのブラウザでも一致します。入力と同時にハイライトされ、一致ごとに番号付き・名前付きキャプチャグループが表示されます。
パターンは2秒キルスイッチ付きWeb Workerで実行されるため、(a+)+$のような破滅的バックトラッキングでもタブはフリーズしません。パターン集やチートシートが必要なら専用サイトregexcheck.comへ。
よくある質問
"g" フラグがないと、パターンの動作が変わるのはなぜですか?
"g" がないと、JavaScriptの正規表現エンジンは最初の一致で処理を止めます。このテスターはデフォルトで "g" を有効にしているため、テーブルとハイライトはテキスト中のすべての一致を表示します。オフにすると、最初の一致だけを扱うパターンの挙動を確認できます。
パターンがハング(破滅的バックトラッキング)した場合はどうなりますか?
タイムアウト付きの独立した Web Worker 内で実行されます。マッチングがすぐに終わらない場合、テスターは worker を強制終了し、ページをフリーズさせる代わりにエラーを表示します。
置換テキストでキャプチャ組を参照するにはどうすればいいですか?
出現順に番号付きの組は $1、$2 のように、(?<year>\d{4}) のような名前付き組は $<name> で参照します。「置換」タブでは入力に合わせて置換後のテキストがリアルタイムでプレビューされます。
「解説」タブは実際何をしますか?
パターンをアンカー、量指定子、グループ、文字クラスなどの個々のトークンに分解し、それぞれが何にマッチするかを説明します。他人が書いたパターンを理解したり、自分のパターンをデバッグしたりするのに役立ちます。
テスト用のテキストやパターンはサーバーに送信されますか?
いいえ。マッチングはブラウザ内のWeb Workerでローカルに実行されます。入力したパターンやテキストがどこかにアップロードされることはありません。