JA
マイツール

正規表現テスター(JavaScript)

正規表現がテキストのどこに一致するかを、位置とキャプチャグループつきの表で表示し、検索と置換の結果もプレビューします。JavaScriptの正規表現エンジンに基づきます。

スラッシュなしでパターンを入力するか、/ab+c/gi のようなリテラルを貼り付けてください。
$1、$2 … はグループ、$<name> は名前付きグループ、$& は一致した全体、$$ はドル記号を挿入します。空にすると一致した部分が削除されます。
マイツール →
広告

パターンとサンプルのテキストを入力すると、「計算」を押した後に、正規表現が何に一致するかを、一致ごとの位置とキャプチャグループまで正確に確認できます。このテスターは、ブラウザーのJavaScript RegExpエンジン、つまりJavaScriptのプログラムで使うのと同じRegExp APIを使い、パターンをコードに入れる前に、$1形式の参照を使った検索と置換の結果をプレビューできます。

使い方

  1. スラッシュなしでパターンを入力するか、/\d+/giのようなリテラルを貼り付けます。
  2. 必要なフラグ g、i、m、s、u にチェックを入れます。
  3. 検索するテキストを貼り付けます。
  4. 必要なら置換後の文字列を入力して、text.replace()の結果をプレビューします。
  5. 「計算」を押します。一致の数を読み取り、続いて一致とそのグループの表を確認します。

計算式

繰り返し:match = re.exec(text)(re.lastIndexから)、gフラグがある間

gがない場合は、最初の一致だけが返されます。位置は、JavaScriptのmatch.indexと同様、UTF-16コード単位を0から数えた値です。空の一致の後は1つ位置を進める(uやvではコードポイント1つ分)ので、x*のようなパターンでも無限ループになりません。パターンは別のWorkerで2秒の制限つきで実行され、遅い表現はページをブロックすることなく停止されます。

計算例

既定のパターン(\d{4})-(\d{2})-(\d{2})は、サンプルの文で2件の一致を見つけます。インデックス15の2026-03-15とインデックス30の2026-10-01で、それぞれ3つのグループ(年、月、日)があります。2026/12/01はスラッシュを使っているため対象外です。置換$2/$3/$1は文を「Invoices dated 03/15/2026 and 10/01/2026 are due…」に変えます。

よくある質問

この正規表現はPython、PHP、Javaでも同じように動きますか?

文字クラス、量指定子、グループ、アンカーなどの基本は共通ですが、所有量指定子(JavaScriptにはありません)、名前付きグループの構文、一部のエスケープなど、言語ごとに異なる機能があります。実際に使う言語で、境界的なケースをもう一度テストしてください。

一致が1件しか出ないのはなぜですか?

g(グローバル)フラグがオフになっているためです。このフラグがないと、JavaScriptは最初の一致で止まり、replace()もその1件だけを置換します。

ドット(.)が行をまたいで一致しないのはなぜですか?

既定では、ドットは改行を含みません。s(dotAll)にチェックを入れるか、ドットの代わりに[\s\S]を使ってください。

パターンがタイムアウトしたのはなぜですか?

(a+)+$のような入れ子の量指定子は、バックトラックに長い時間がかかることがあります。実行はWorkerで行われ、2秒で停止します。入力を短くするかパターンを簡単にして、もう一度計算してください。

出典

最終更新:

このツールを引用する
APA

kakaoCalc. (2026, November 8). 正規表現テスター(JavaScript). https://kakao.mobile/ja/tools/regex-tester/

MLA

“正規表現テスター(JavaScript).” kakaoCalc, 8 Nov. 2026, kakao.mobile/ja/tools/regex-tester/.

広告