リアルタイムで正規表現をテスト。マッチ結果をハイライト表示。
正規表現を入力してください
クイックリファレンス(クリックで挿入)
正規表現(regex)パターンをリアルタイムでテストできる無料ツールです。パターンを入力するとテスト文字列に対するマッチ結果が即座にハイライト表示されます。メールアドレスや電話番号のバリデーション、ログファイルからのデータ抽出、テキストの検索・置換パターンの作成などに活用できます。
正規表現は文字列のパターンマッチングに使われる表記法です。例えば「\d{3}-\d{4}」は郵便番号(810-0001形式)にマッチし、「[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}」はメールアドレスにマッチします。このツールでパターンを試しながら、正しく動作することを確認できます。
グローバルマッチ(g)、大文字小文字無視(i)、複数行モード(m)のフラグに対応しています。キャプチャグループの内容も表示されるので、複雑なパターンのデバッグに便利です。
正規表現(regular expression、略してregex)とは、文字列のパターンを表現するための記法です。特定の文字そのものだけでなく「数字が3桁続く」「行頭から英字が並ぶ」「アットマークを挟んだメールアドレスの形」といった抽象的な並びを、短い記号の組み合わせで表現できます。この記法はテキストの中から条件に合う部分を見つけ出すマッチングや検索、見つけた部分を別の文字列に入れ替える置換に広く使われ、プログラミング、テキストエディタ、ログ解析、入力値のバリデーションなど多くの場面で活躍します。
正規表現の構文は言語やツールによって細かな違いがあります。本ツールはブラウザ標準のJavaScript正規表現エンジン(RegExpオブジェクト)を使って入力したパターンを評価します。したがって、ここでテストした結果はJavaScript環境での挙動と一致します。PythonやPHP、Perlなど他の言語では一部の記法や対応するフラグが異なる場合があるため、利用先の言語に合わせて確認してください。入力したパターンとテスト文字列はすべてブラウザ内で処理され、サーバーに送信されることはありません。
正規表現で特別な意味を持つ記号を「メタ文字」と呼びます。よく使うメタ文字とその意味は次のとおりです。意味を正確に覚えておくと、パターンの読み書きが格段に速くなります。
| メタ文字 | 意味 | 例 |
|---|---|---|
| . | 改行を除く任意の1文字 | a.c は abc, a1c などにマッチ |
| * | 直前の要素の0回以上の繰り返し | ab* は a, ab, abb にマッチ |
| + | 直前の要素の1回以上の繰り返し | ab+ は ab, abb にマッチ |
| ? | 直前の要素の0回または1回 | colou?r は color, colour |
| \d | 数字1文字(0〜9) | \d\d は 42 などにマッチ |
| \w | 単語文字1文字(英数字とアンダースコア) | \w+ は word_1 にマッチ |
| \s | 空白文字1文字(スペース・タブ・改行など) | a\sb は a b にマッチ |
| ^ | 行頭(先頭)に一致する位置 | ^abc は行頭の abc |
| $ | 行末(末尾)に一致する位置 | abc$ は行末の abc |
| [abc] | 角括弧内のいずれか1文字 | [abc] は a か b か c |
| () | グループ化とキャプチャ | (ab)+ は ab の繰り返し |
| | | 左右のどちらか(または) | cat|dog は cat か dog |
これらを組み合わせることで、より複雑なパターンを表現できます。たとえば数字メタ文字と繰り返し、ハイフンを組み合わせれば電話番号や郵便番号の形を、角括弧やアットマークを組み合わせればメールアドレスの形を表せます。本ツールのクイックリファレンスのチップを押すと、数字・英字・ひらがな・カタカナ・漢字・メール・URL・電話番号といった代表的なパターンが入力欄に挿入されるので、早見表と見比べながら学べます。