JAVASCRIPT REGEX TESTER

正規表現テスター|JavaScript Regexのマッチ・置換を確認

JavaScript / ECMAScript RegExpの構文、複数マッチ、位置、キャプチャグループ、名前付きグループ、置換結果をまとめて確認できます。

入力した正規表現・テスト文字列・置換文字列はブラウザ内だけで処理され、外部へ送信・保存されません。

正規表現を入力

/で囲まず、pattern本体だけを入力してください。

例:\d+最大5,000文字
フラグ

uとvは同時に使用できません。どちらかをONにすると、もう一方をOFFにします。y(sticky)はこのツールでは開始位置0から評価します。

現在の正規表現

JavaScriptコード

サンプル:

テスト文字列

最大20万文字。入力から約300ms後に再評価します。

マッチハイライト


              

ハイライトは先頭200件までです。0文字マッチは一覧に表示しますが、背景色では表示しません。

マッチ結果

indexはJavaScript文字列のUTF-16位置です。

置換結果プレビュー

JavaScriptのString.prototype.replace()と同じ置換文字列の意味を使用します。

$&$1$<name>$$に対応。空文字なら一致部分を削除します。

正規表現とは

正規表現は、文字列の検索条件をパターンで表す方法です。このツールはJavaScript / ECMAScript RegExp専用で、ブラウザ標準のnew RegExp(pattern, flags)により評価します。PCRE、PHP、Python、Ruby、Java、.NET、RE2などとは構文や結果が異なる場合があります。

正規表現テスターの使い方

pattern欄へ/を含めず正規表現本体を入力し、フラグを選び、テスト文字列を入力します。たとえばPattern \d+、Flags g、Text ID: 123 / 456では、123456の2件が表示されます。

JavaScriptの正規表現フラグ

flag意味用途
gglobal複数マッチ
iignoreCase大文字・小文字を区別しない
mmultiline行ごとの先頭・末尾
sdotAllドットを改行にも一致
uUnicodeUnicode mode
vUnicode SetsUnicode集合記法
ysticky指定位置から連続一致
dindicesキャプチャ位置

g・i・m・sとは

gは全文から複数の一致を取得し、OFFでは最初の1件だけを取得します。iは大文字と小文字を区別しません。mは^$を各行に適用し、sは.を改行にも一致させます。

u・vとは

uはUnicode mode、vはUnicode Sets modeです。両者は同時に指定できません。ブラウザが対応している場合、\p{Script=Hiragana}+のようなUnicode property escapesを利用できます。対応しないフラグは画面で無効になります。

キャプチャグループとは

Pattern (\d{4})-(\d{2})-(\d{2})とText 2026-08-14では、Group 1が2026、Group 2が08、Group 3が14になります。任意グループが参加しなかった場合は「未マッチ」と表示します。dフラグON時はブラウザが返す正確なgroup indicesも表示します。

名前付きキャプチャグループとは

(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})のように名前を付けると、year、month、dayとして結果を確認できます。

正規表現で置換する方法

上の日付PatternにReplacement $<day>/$<month>/$<year>を指定すると、14/08/2026になります。gがOFFなら最初の一致だけ、ONならすべての一致をJavaScript replace semanticsで置換します。

正規表現チートシート

.任意の1文字
\d数字
\wword character
\s空白
^先頭
$末尾
*0回以上
+1回以上
?0または1回
{n,m}回数
[]文字クラス
()キャプチャ
(?:)非キャプチャ
|OR
(?=...)肯定先読み
(?!...)否定先読み
(?<=...)肯定後読み
(?<!...)否定後読み

処理が遅くなる正規表現について

入れ子の量指定子などは、入力内容によってcatastrophic backtrackingを起こすことがあります。本ツールは正規表現のコンパイル・マッチ・置換をメイン画面から分離したブラウザ内Web Workerで実行し、1秒で停止します。ただし安全性を完全に保証するものではありません。

HTMLやXMLを本格的に解析するときは、正規表現だけでなく用途に合うparserが必要になる場合があります。

よくある質問

正規表現とは何ですか?

文字列の検索や置換条件をパターンで表す記法です。

このツールはどの正規表現に対応していますか?

JavaScript / ECMAScript RegExpに対応します。他の言語や正規表現エンジンとは結果が異なる場合があります。

gフラグとは?

globalの略で、テキスト全体から複数の一致を取得します。

iフラグとは?

大文字・小文字を区別せずにマッチします。

mとsの違いは?

mは^と$の行単位動作、sはドットが改行へ一致するかを変更します。

uとvは同時に使えますか?

いいえ。JavaScript RegExpの仕様上、同時には使用できません。

キャプチャグループを確認できますか?

はい。番号付きグループと、ブラウザ対応範囲で名前付きグループを確認できます。

名前付きキャプチャにも対応していますか?

はい。対応ブラウザではグループ名と値を表示します。

正規表現で置換できますか?

はい。JavaScript String.prototype.replace()と同じ置換文字列の意味でプレビューできます。

正規表現でブラウザが固まることはありますか?

重い処理をWeb Workerへ分離し1秒で停止しますが、あらゆる危険を完全に判定する機能ではありません。

絵文字でindexが見た目とずれるのはなぜですか?

JavaScript RegExpのindexはUTF-16 code unit位置のため、絵文字などでは見た目の文字数と異なる場合があります。

入力したテキストはサーバーへ送られますか?

いいえ。Cookie、ブラウザストレージ、URL、Analytics、外部API、サーバーへ保存・送信しません。