すべての記事
開発

正規表現をオンラインでテストする方法:実践ガイドと例

2026年2月18日読了7分

TheDailyUtilsの正規表現テスター
無料の正規表現テスターで、パターンをライブでテスト・デバッグできます。

正規表現をオンラインでテストする理由

正規表現(regex)とは、テキストを照合するためのコンパクトなパターンです。メールアドレスの検証、日付の抽出、ログファイル内のすべてのURLの検索などに使われます。問題は、正規表現は容赦なく、文字を一つ誤っただけでパターンが何にもマッチしなかったり、マッチしすぎたり、全く別のものにマッチしてしまったりすることです。パターンを手探りで書いてそのままプロダクションコードに入れることが、微妙なバグの温床となります。

正規表現をオンラインでテストすることでこの問題が解決します。サンプルテキストを貼り付けてパターンを入力すると、何がマッチして何がマッチしないかを文字単位でハイライト表示しながら即座に確認できます。コンパイル手順も、print文も、パターン一つを確認するためにプログラム全体を再実行する必要もありません。数秒で反復できます。

基本的な構成要素

日常的なパターンの多くは、少数の要素から構成されています:

  • リテラル — 通常の文字はそのままマッチします。パターンcatはテキスト「cat」にマッチします。
  • 文字クラス[abc]はa、b、cのいずれか1文字にマッチします。[0-9]は任意の数字、[a-z]は任意の小文字にマッチします。
  • 省略表現\dは任意の数字、\wは任意の単語文字、\sは任意の空白文字です。大文字バージョンはその逆(否定)です。
  • 量詞*は0回以上、+は1回以上、?は0回または1回、{2,4}は2〜4回を意味します。
  • アンカー^は行頭にマッチし、$は行末にマッチします。パターンを任意の場所でマッチさせるのではなく、特定の位置に固定します。
  • グループ — 丸括弧( )は部分をグループ化し、抽出のためにキャプチャします。

実践例

米国電話番号のマッチ:パターン\d{3}-\d{3}-\d{4}は「415-555-0199」にマッチします — 3桁、ハイフン、3桁、ハイフン、4桁です。「call 415-555-0199 today」に対してテストすると、電話番号の部分だけがハイライトされます。

年号の抽出:\b(19|20)\d{2}\bは、19または20で始まる4桁の年号を、単語境界により長い数字の一部としてではなくマッチさせます。

シンプルなメールアドレスの検証:^[\w.+-]+@[\w-]+\.[\w.-]+$はアドレスの一般的な形式をカバーします。実際のメールアドレス検証は非常に複雑です。パターンを信頼する前に多くのサンプル入力に対してテストすることが重要である理由がここにあります。

テスターが即座に発見する一般的なミス

  • 貪欲な量詞.*はできるだけ多くをキャプチャします。最小のチャンクにマッチさせるには、遅延形式.*?を使います。テスターは複数のマッチがあるテキストで違いを即座に示してくれます。
  • 特殊文字のエスケープ漏れ — リテラルのドットは\.と書く必要があります。そうしないと.は任意の文字にマッチします。丸括弧、角括弧、プラス記号も同様です。
  • アンカーの忘れ^$がないと、「検証」パターンが無効な入力の中にある有効な部分文字列にマッチしてしまう可能性があります。
  • フラグの混乱 — グローバルフラグはすべてのマッチを検索し、大文字小文字を区別しないフラグは文字のケースを無視し、マルチラインフラグはアンカーの意味を変えます。ライブテスターでそれらを切り替えると効果が明確になります。

パターンをライブで作成・検証する

信頼できるワークフローはインクリメンタルです:パターンの小さな部分を書き、マッチを確認し、次の部分を追加します。オンラインでテストすることで、フィードバックが即座に得られ、空文字列、不正な入力、一般的でないが有効な値など、実際に気になるエッジケースを貼り付けることができるため、このループが短くなります。

無料のオンライン正規表現テスターを開く — パターンを入力し、テストテキストを貼り付けると、キャプチャグループとともにライブでハイライトされたマッチが表示されます。サインアップ不要、ブラウザ上で完全に動作します。

regexregular expressiondeveloperpattern matchingvalidation