やまどり

正規表現テスター

正規表現パターンをリアルタイムでテスト。マッチ箇所のハイライト・置換・グループ抽出に対応。

//g
user@example.comadmin@test.jp などのメールアドレスを検出します。
2 件マッチ
#1"user@example.com"index: 0
$1: "user"$2: "example.com"
#2"admin@test.jp"index: 19
$1: "admin"$2: "test.jp"

正規表現(Regular Expression)について

正規表現(regex / regexp)は、文字列のパターンマッチングに使われる記法です。 JavaScript・Python・Java・Go など主要なプログラミング言語で利用できます。

よく使うメタ文字

  • . — 任意の1文字(改行を除く)
  • ^ — 行頭、$ — 行末
  • \d — 数字 [0-9]、\w — 単語文字 [A-Za-z0-9_]、\s — 空白文字
  • * — 0回以上、+ — 1回以上、? — 0または1回
  • {n} — n回、{n,m} — n〜m回
  • (abc) — キャプチャグループ、(?:abc) — 非キャプチャグループ
  • [abc] — 文字クラス、[^abc] — 否定文字クラス
  • a|b — a または b

フラグ

  • g(global): 全マッチを検索(省略時は最初の1件のみ)
  • i(ignoreCase): 大文字・小文字を区別しない
  • m(multiline): ^ と $ を各行頭・行末にマッチさせる
  • s(dotAll): . が改行文字にもマッチ
  • u(unicode): Unicode コードポイントとして処理

正規表現をテストする手順

  1. STEP 1パターン、フラグ、対象テキストを入力します。
  2. STEP 2マッチ範囲とキャプチャグループを確認します。
  3. STEP 3置換を使う場合は結果を比較し、想定外の行まで対象になっていないか確かめます。

具体的な利用例

ログから日付やIDを抽出する、ファイル名を一括置換する前にパターンを試す、といった用途に使えます。少なくとも一致する例と一致してはいけない例の両方を用意すると精度を上げられます。

結果を見るときの注意点

このツールはJavaScriptの正規表現構文に基づきます。他言語では後方参照やフラグの仕様が異なる場合があります。複雑な繰り返しは処理時間が急増することがあるため、外部入力へ適用する式は特に注意してください。

入力データの扱い

処理はこのブラウザ内で完結し、入力したテキストやファイルは変換・解析のために外部サーバーへ送信されません。共有端末を使う場合は、作業後に入力欄とクリップボードの内容も消去してください。