正規表現テスター

正規表現は検証、検索置換、ログ解析のためにテキストをパターンマッチします。本番コードに入れる前にライブハイライトでパターンをテストし、ユーザー入力での破滅的バックトラッキングの驚きを避けます。

正規表現のテスト方法

1. 正規表現パターンを入力します(外側のスラッシュなし、またはフラグ付き)。
2. フラグを設定します: gグローバル、i大文字小文字無視、m複数行。
3. テスト文字列エリアにサンプルテキストを貼ります。
4. マッチ、キャプチャグループ、置換プレビューがあれば確認します。

正規表現の例

メール風の検証

^[\w.-]+@[\w.-]+\.\w+$ は単純なメールを捉えます——RFC完全ではありませんがフォームに便利です。

ISO日付の抽出

\d{4}-\d{2}-\d{2} はログ行の2024-03-15を見つけ、grep置換に使えます。

スラッグ化ヘルパー

タイトル文字列からURLスラッグを作るため、[^a-z0-9]+ をハイフンに置換します。

正規表現が役立つとき

構造化された文字列(電話、郵便番号)を検証するとき。
半構造化ログを解析するとき。
キャプチャグループと先読みを学ぶとき。

ReDoSの認識

(a+)+ のような入れ子量化子は悪意ある文字列でCPUを止めます——サーバーでユーザー正規表現を避けるか、タイムアウト付きの安全なエンジンを使います。

よくある質問

どの正規表現風味ですか?

JavaScript RegExp——PCREとの差があります(後読みサポートはエンジン版で異なります)。

グローバルフラグgは?

最初だけでなくすべてのマッチを見つけます——JSではlastIndex付きの状態付きテスト。

特殊文字はエスケープしますか?

リテラル一致には . * + ? [ ] ( ) { } | \ ^ $ のエスケープが必要です。

キャプチャグループは?

括弧 ( ) は、置換の $1 $2 でアクセスできる番号付きグループを作ります。

ローカルですか?

はい。