本文へスキップ

正規表現テスター

正規表現をその場でテスト。マッチ・キャプチャグループ・置換結果を確認できます

ツールを読み込んでいます…

正規表現とテスト文字列を入力すると、一致した部分がすぐに強調表示され、それぞれの位置とグループの値がわかります。コードに書く前に、パターンが期待どおりに一致するか、置換の結果が正しいかを確認するのに使えます。

使い方

  1. 「パターン」にスラッシュなしで正規表現を入力し、g、i、mなどのフラグのボタンを押してオン・オフを切り替えます。
  2. 「テスト文字列」にテキストを入れます。一致した部分が強調表示され、「一致」タブにその位置とグループが一覧表示されます。
  3. 「置換」では、「置換後の文字列」に$1などのグループ番号を入力すると結果が表示されます。「分割」では一致と一致の間の部分が表示されます。
  4. 「よく使うパターン」から例を選んだり、「構文の早見表」を開いて記号を調べたりできます。「共有リンクをコピー」を使うと、ほかの人が同じパターンとテキストを開けます。

計算方法と補足

よくある質問

正規表現で最初の1件しか一致しないのはなぜ?
gフラグがないと、最初の一致だけが見つかります。gボタンをオンにすると、すべての一致が見つかります。
正規表現の置換でキャプチャグループを使うには?
$1や$2は番号付きのグループ、$&は一致した全体です。名前付きグループは、$の後に山かっこで囲んだ名前を書きます。(\d{4})-(\d{2})-(\d{2}) を $3.$2.$1 で置換すると、2024-03-15 が 15.03.2024 になります。
メールアドレスの正規表現は?
「メールアドレス(簡易)」の例は [\w.+-]+@[\w-]+(?:\.[\w-]+)+ です。一般的なアドレスは見つけられますが、メールの規格のすべてのルールを確認するわけではありません。
JavaScriptの正規表現はPythonやJavaと同じですか?
基本的な構文はほぼ同じですが、細かい点が異なります。たとえば、名前付きグループはJavaScriptでは (?< で始まりますが、Pythonでは (?P< で始まります。
「1秒で停止しました。」と表示されるのはなぜ?
(a+)+ のように量指定子が入れ子になったパターンは、一致しないテキストに対して膨大な数の組み合わせを試すことがあります。内側の部分をより具体的にするか、入れ子をなくしてください。