区切り記号を外す
(?<=a)bのように本体だけ入力します。例を読み込む前に上書き内容を確認でき、適用後は一度取り消せます。
- 空パターンも手動実行時にのみ評価します。
正規表現とパターン照合
実装済みのエンジンを選び、パターン本体と文字列を入力して実行します。
区切り記号 / を付けずに本体だけ入力します。RE2内部は常にUnicodeです。
入力または手動テストを待っています。
一致処理はブラウザ内の別スレッドで実行され、パターンと文字列は送信されません。
入力または手動テストを待っています。
実行されるのはPCRE2とRE2だけです。言語の行は参考情報です。
| 対象 | 実行 | 後読み | 後方参照 | 範囲 |
|---|---|---|---|---|
| PCRE2 | 実行 | 可 | 可 | PCRE2 WASM。PHPの関数層は別です。 |
| RE2 | 実行 | 不可 | 不可 | RE2 WASM。Go/Rust本体ではありません。 |
| PHP / PCRE2 | PCRE2本体のみ | 可 | 可 | PHP preg_*には区切りや戻り値があります。 |
| Java | 参考のみ | 可 | 可 | Java実行環境はありません。 |
| Go | 参考のみ | 不可 | 不可 | Go regexpは別実装です。 |
| Rust | 参考のみ | 不可 | 不可 | Rust regexは別実装です。 |
| .NET | 参考のみ | 可 | 可 | .NET実行環境はありません。 |
PHP用の式をGoへ移すとき、JavaScriptの強調表示だけでは移植先で動くと判断できません。正規表現エンジン比較は同じ文字列でコンパイルの成否を比べます。
正規表現テスターの選択名だけでは実装を判断できません。PCRE2テストはここでできますが、Go正規表現の本番動作にはGo本体の言語別チェッカーが必要です。
一つの入力から実際の構文差を確認できます。
正規表現エンジン比較はJavaScriptの名前を変えません。後読みはPCRE2で一致し、RE2では構文エラーになります。
パターン、文字列、エンジンまたはオプションを変えると、前回のコピーと保存は無効になります。
(?<=a)bのように本体だけ入力します。例を読み込む前に上書き内容を確認でき、適用後は一度取り消せます。
初期値はPCRE2です。RE2も独立したWASMで、iとmは初期状態でオフです。
開始位置は0基準のUTF-16単位で、終了位置は範囲外です。画面は50件ずつ表示し、JSONには成功した全件が入ります。
後読みと後方参照はPCRE2で使えますが、RE2ではエラーです。別エンジンへの黙った切替はしません。
番号付き・名前付きグループを表示し、絵文字の後もRE2位置をUTF-16へ変換します。
照合はWorkerで行い、二秒で打ち切れます。入力、件数、レポートに上限があります。
正規表現エンジン比較はPCRE2を初期選択します。PHPのpreg_*関数全体ではなくPCRE2の照合本体です。
後読みや後方参照はRE2で使えません。Goで使うならGo regexpでの最終確認も必要です。
使えません。RE2を選ぶと実際の構文エラーを表示します。
同一とは限りません。Unicode、フラグ、キャプチャの扱いを対象言語で確認してください。
PCRE2とRE2だけを実行します。Javaや.NETは表で示しますが、このページでは動きません。
解決しませんでしたか?