開発者

正規表現テスター

正規表現パターンを書き、テストテキストを貼り付けて、入力するたびにすべての一致がライブでハイライトされる様子を見てみましょう。パターンが機能するか推測するのはやめて、実際に動作を確認してください。

このツールは役に立ちましたか?

正規表現テスターとは?

regexテスターは、サンプルテキストに対して正規表現をリアルタイムでテストできる必須の開発ツールです。パターンが正しく一致するかどうかの即時視覚フィードバックを提供します。正規表現はregexとして一般に知られ、 virtuallyすべてのプログラミング言語とテキストエディタでテキスト検索、検証、抽出、操作に使用される強力なシーケンスベースのパターンです。このツールでは、regexパターンを書き、テストテキストを貼り付けると、すべての一致が位置、キャプチャグループの内容、一致数とともに即座にハイライト表示されます。メールアドレスや電話番号の検証、構造化されていないテキストから日付や価格の抽出、コードベースの検索と置換パターンの構築、regex構文の学習に最適です。JavaScriptのregex機能をすべてサポートし、文字クラス、量詞、アンカー、キャプチャグループ、先読み・後読みアサーション、選択、Unicodeマッチングを含みます。組み込みのregexチートシートも備えており、外部依存関係や登録なしでregex開発の完全な環境を提供します。

この計算機を使用するタイミング

  • Webフォームでのユーザー入力の検証。
  • 既存コードでの失敗した一致のデバッグ。
  • regex構文をインタラクティブに学ぶ。
  • テキストから特定のデータを抽出。
  • 検索と置換パターンの構築。
  • フォームバリデータの検証。

手順:

  1. regexパターンを入力。
  2. 適切なフラグを選択。
  3. テストテキストを入力または貼り付け。
  4. 結果パネルを確認。
  5. チートシートパネルを使用。

計算式

パターン + フラグ → RegExp → テストテキストに対して実行 → 一致の配列 一般的なパターン: - \d+ → 1つ以上の数字 - [a-zA-Z]+ → 1つ以上の文字 - ^…$ → 開始/終了のアンカー - (…) → キャプチャグループ

ユースケース

  • メールアドレス、電話番号、URLの検証
  • テキストからのパターン抽出(日付、価格、ID)
  • テキストエディタでの検索・置換操作
  • Webフォームでの入力検証

主な利点

  • リアルタイムの正規表現テスト
  • キャプチャグループの内容表示
  • JavaScript正規表現機能のサポート
  • _regexチートシート付き
  • ブラウザ内で完結、プライバシー保護
  • 登録不要、広告なし、使用制限なしで無料。開発セッション中のクイックなregexテストに最適です

プロのヒント

  • 正規表現パターンをシンプルに保ちましょう
  • キャプチャグループの内容を確認しましょう
  • 量詞を正しく使い分けましょう
  • アンカーを活用して位置指定をしましょう
  • ブラウザのデベロッパーツールでデバッグしましょう

避けるべきよくある間違い

  • 特殊文字のエスケープを忘れる
  • 贪婪量詞と懒惰量詞の違いを理解しない
  • キャプチャグループの内容を確認しない
  • 正規表現のパフォーマンスを考慮しない

重要な用語の説明

パターン: regex構文で書かれた検索式。
フラグ: 動作を変更するオプション。
一致: パターンの成功した出現。
キャプチャグループ: 括弧で囲まれたパターンの部分。
クアンティフィア: 前の要素が何回発生するかを指定する文字。

関連コンセプト

  • 正規表現(Regex):テキストマッチングのための検索パターンを定義する文字の並び。
  • キャプチャグループ:一致の特定部分を抽出する、正規表現の括弧で囲まれた部分。
  • 量指定子:先行する要素が何回出現する必要があるかを指定する文字(例:+、*、?、{n})。
  • アンカー:文字ではなくテキスト内の位置に一致するゼロ幅アサーション(開始は^、終了は$)。
  • 先読み/後読み:テキストを消費せずに現在の位置の前後のパターンをチェックするゼロ幅アサーション。

例

パターン:^[\w.-]+@[\w.-]+\.\w{2,}$ とテストテキスト:「[email protected]または[email protected]までご連絡ください」で両方のメールアドレスに一致し、結果リストに表示されます。

結果の解釈方法

一致数とハイライトされたテキストを見て始めます。一致が期待されるが見られない場合、以下を確認してください:(1)グローバルフラグ(g)は設定されていますか?(2)特殊文字を正しくエスケープしていますか?(3)アンカーは正しいですか?キャプチャグループパネルは、パターンの各括弧部分が何をキャプチャしたかを表示します。greedyとlazyの一致の違いに注意してください。

よくある質問

正規表現とは何ですか?
正規表現(regex)は検索パターンを定義する文字の並びです。メールアドレスの検索、入力の検証、文字列からのデータ抽出など、テキスト内のパターンマッチングに使用されます。
このツールはどの正規表現エンジンを使用していますか?
このツールはJavaScriptの組み込みRegExpエンジンを使用しており、グループ、先読み、量指定子、文字クラスなど、ほとんどの標準的な正規表現機能をサポートしています。
一般的な正規表現フラグは何ですか?
g(グローバル):最初だけでなくすべての一致を検索します。i(大文字小文字を区別しない):大文字小文字を無視します。m(複数行):^と$が行の境界に一致します。s(dotall):.が改行にも一致します。
なぜ私の正規表現は一致を見つけられないのですか?
よくある問題:複数の一致に対するgフラグの欠如、特殊文字(., *, +, ?, [, ], (, ))のエスケープ漏れ、量指定子の誤った使用。
正規表現(regex)とは何ですか?
正規表現(regex)は、文字列内の文字の組み合わせに一致させるために使用されるパターンです。検索、検証、テキスト操作のための強力なツールです。正規表現はパターンを定義するために . * + ? ^ $ [] () {} | などの特殊文字を使用します。
正規表現の^記号は何を意味しますか?
正規表現において、^には2つの意味があります。文字クラス[^abc]の中では「否定」(〜でない)を意味します。文字クラスの外では、パターンを文字列の先頭に固定します。例えば、^helloは文字列の先頭にある'hello'にのみ一致します。
正規表現の*と+の違いは何ですか?
どちらも量指定子です:*は0回以上の出現に一致し(オプション)、+は1回以上の出現に一致します(必須)。したがって、'ab*c'は'ac'、'abc'、'abbc'などに一致しますが、'ab+c'は'abc'、'abbc'に一致し、'ac'には一致しません。
正規表現でリテラルのドット(.)に一致させるにはどうすればよいですか?
ドット(.)は「任意の文字」を意味する特殊文字です。リテラルのドットに一致させるには、バックスラッシュでエスケープします:\。例えば、パターンwww\.example\.comはそのURLに正確に一致し、'wwwXexampleYcom'には一致しません。
キャプチャグループとは何ですか?
キャプチャグループは括弧()で囲まれた正規表現の部分です。後で使用するために一致したテキストを「キャプチャ」します。例えば、(\d{4})-(\d{2})-(\d{2})は2024-01-15のような日付文字列から年、月、日を別々にキャプチャします。
貪欲(greedy)マッチングと非貪欲(lazy)マッチングの違いは何ですか?
貪欲な量指定子(* + ? {})はできるだけ多くのテキストに一致します。非貪欲な量指定子(*? +? ?? {})はできるだけ少ないテキストに一致します。例えば、<.*>は'<div>コンテンツ</div>'全体に一致しますが(貪欲)、<.*?>は'<div>'と'</div>'に個別に一致します(非貪欲)。
正規表現でメールアドレスを検証するにはどうすればよいですか?
基本的なメールパターン:^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ これはほとんどの有効なメールアドレスに一致しますが、すべてのエッジケースをカバーするわけではありません。本番環境での使用には、国際ドメインや特殊文字を処理する専用のメール検証ライブラリを検討してください。

さらに多くのツールを見る

ツールライブラリ全体から厳選したおすすめです。