正規表現テスター
このツールについて
入力テキストに対して正規表現を実行し、マッチ箇所を確認できます。処理はすべてブラウザ内で完結し、データは送信されません。
テスト実行
—
使い方
- 正規表現とフラグを入力します。
- 入力テキストに対して「テスト実行」を押すとマッチ箇所を表示します。
例(そのまま使える正規表現集・カテゴリ別 / 100+)
基本・空白・行
- 空行のみ:
^\s*$
(m) - 先頭の空白:
^\s+
(m) - 末尾の空白:
\s+$
(m) - 先頭・末尾の空白(トリム対象):
^\s+|\s+$
(m) - 連続空白(1個に圧縮):
\s{2,}
- 可視文字(空白以外):
\S+
- ASCIIのみ:
^[\x00-\x7F]+$
- 印刷可能ASCII:
^[\x20-\x7E]+$
- 非ASCIIを含む行:
[^\x00-\x7F]
- 単語境界:
\bword\b
数値・金額
- 整数(符号任意):
^-?\d+$
- 小数(符号任意):
^-?\d*\.\d+$
- 数値(整数 or 小数):
^-?(?:\d+|\d*\.\d+)$
- 桁区切り3桁(例: 1,234,567):
^\d{1,3}(?:,\d{3})+$
- 金額(¥ or $ + 桁区切り可):
^(?:¥|\$)\s?\d{1,3}(?:,\d{3})*(?:\.\d{2})?$
- パーセンテージ:
^\d{1,3}(?:\.\d+)?%
- 指数表記:
^[+-]?(?:\d+\.?\d*|\.\d+)[eE][+-]?\d+$
- 16進数:
^(?:0x)?[0-9A-Fa-f]+$
- 2進数:
^[01]+$
- 8進数:
^[0-7]+$
日付・時刻
- 日付 YYYY-MM-DD(形式のみ):
^\d{4}-\d{2}-\d{2}$
- 時刻 HH:MM(24h):
^(?:[01]\d|2[0-3]):[0-5]\d$
- 時刻 HH:MM:SS(24h):
^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d$
- ISO8601 日付時刻(簡易):
^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z$
- 年月(YYYY/MM):
^\d{4}/(0[1-9]|1[0-2])$
- 和暦(令和R\d+年の簡易):
^令和\d+年(?:\d+月(?:\d+日)?)?$
(u) - 曜日(英, 3文字):
^(Mon|Tue|Wed|Thu|Fri|Sat|Sun)$
- タイムゾーン(±HH:MM):
^[+-](?:[01]\d|2[0-3]):[0-5]\d$
連絡先・住所(簡易)
- 日本の郵便番号:
^\d{3}-\d{4}$
- 日本の電話(0x-xxxx-xxxx 簡易):
^0\d{1,4}-\d{1,4}-\d{4}$
- 国際電話(+国番号 スペース区切り簡易):
^\+\d{1,3}\s?\d+(?:[\s-]\d+)*$
- 都道府県(漢字/都道府県/道/府):
^(?:東京都|北海道|(?:京都|大阪)府|.+県)$
(u) - メール(一般的簡易):
^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$
- ユーザー名(3–16英数_):
^[A-Za-z0-9_]{3,16}$
- パスワード強度(英大小・数字・記号各1以上, 8+):
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[\W_]).{8,}$
Web / URL / HTTP
- URL(http/https 簡易):
https?:\/\/\S+
- ドメイン(Punycode非対応・簡易):
^(?:[A-Za-z0-9-]+\.)+[A-Za-z]{2,}$
- サブドメイン含むホスト:
^(?:[A-Za-z0-9-]+\.)*[A-Za-z0-9-]+\.[A-Za-z]{2,}$
- クエリパラメータ key=value:
[?&]([A-Za-z0-9._~-]+)=([^&#]+)
- フラグメント:
#\w[\w-]*
- ファイル拡張子(.png|.jpg|.gif 等):
\.(?:png|jpe?g|gif|webp|svg)$
(i) - HTTPメソッド:
^(GET|POST|PUT|PATCH|DELETE|HEAD|OPTIONS)$
- HTTPヘッダ行:
^[A-Za-z0-9-]+:\s?.+$
(m) - Basic 認証ヘッダ:
^Basic\s+[A-Za-z0-9+/=]+$
- Bearer トークンヘッダ:
^Bearer\s+[A-Za-z0-9\-\._~\+\/]+=*$
ネットワーク(IP/MAC/CIDR/UUID/JWT 等)
- IPv4(0–255 厳密):
\b(?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\b
- IPv6(省略対応・簡易):
\b(?:[A-Fa-f0-9]{1,4}:){2,7}[A-Fa-f0-9]{1,4}\b
- MAC アドレス(: 区切り):
^(?:[0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$
- MAC アドレス(- 区切り):
^(?:[0-9A-Fa-f]{2}-){5}[0-9A-Fa-f]{2}$
- CIDR(IPv4/長さ 0–32):
^\b(?:\d{1,3}\.){3}\d{1,3}\/(?:[0-9]|[12]\d|3[0-2])\b$
- UUID v4:
^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
(i) - GUID(大小区別なし):
^{?[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}}?$
(i) - Base64(パディング対応):
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$
- JWT(3ドット区切り):
^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$
- SSH公開鍵(ssh-rsa/ed25519):
^ssh-(?:rsa|ed25519)\s+[A-Za-z0-9+/=]+(?:\s.+)?$
ファイル・パス・バージョン
- Windows 絶対パス:
^[A-Za-z]:\\(?:[^\\/:*?"<>|\r\n]+\\)*[^\\/:*?"<>|\r\n]*$
- UNIX 絶対パス:
^\/(?:[^\/\0]+\/)*[^\/\0]*$
- 安全なファイル名(英数._- のみ):
^[A-Za-z0-9._-]+$
- 拡張子取得:
\.([A-Za-z0-9]+)$
- Git ハッシュ(7–40桁):
^[0-9a-f]{7,40}$
- SemVer:
^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$
- Docker イメージ:タグ:
^[a-z0-9]+(?:[._-][a-z0-9]+)*(?::[\w.-]+)?$
- NPMパッケージ名(簡易):
^(?:@[\w-]+\/)?[\w.-]+$
- URLスラッグ:
^[a-z0-9]+(?:-[a-z0-9]+)*$
Webフロント(HTML/CSS/色)
- HTMLタグ(開始/終了対応・簡易):
<([A-Za-z][A-Za-z0-9]*)\b[^>]*>([\s\S]*?)<\/\1>
- HTMLコメント:
<!--[\s\S]*?-->
- href 属性値:
href\s*=\s*"(.*?)"
(i) - CSS 色(#RGB/#RRGGBB):
^#(?:[0-9A-Fa-f]{3}){1,2}$
- CSS rgb():
^rgb\(\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*,\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*,\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*\)$
- CSS hsl():
^hsl\(\s*(?:\d|[1-2]\d{2}|3[0-5]\d)\s*,\s*(?:\d|[1-9]\d)%\s*,\s*(?:\d|[1-9]\d)%\s*\)$
- CSS 単位(px, em など):
^-?\d+(?:\.\d+)?(?:px|em|rem|vh|vw|%)$
文字列・構文(プログラミング断片)
- JavaScript 識別子(簡易):
^[A-Za-z_$][A-Za-z0-9_$]*$
- JavaScript // コメント行:
^\s*\/\/.*$
(m) - JavaScript ブロックコメント:
\/\*[\s\S]*?\*\/
- ダブルクォート文字列(エスケープ対応簡易):
"(?:[^"\\]|\\.)*"
- シングルクォート文字列:
'(?:[^'\\]|\\.)*'
- テンプレートリテラル(簡易):
`(?:[^`\\]|\\.|\\${[^}]*})*`
- JSON キー:
"([A-Za-z0-9_]+)"\s*:
- CSV セル(ダブルクォート対応簡易):
(?:"(?:[^"]|"")*"|[^,\r\n]*)
- メール本文のURL抽出:
https?:\/\/[^\s)>"]+
セキュリティ/入力検証(注意)
- クレジットカード(Luhnは別途・簡易):
\b(?:\d[ -]*?){13,19}\b
- VISA(4で開始 13/16/19桁):
\b4\d{12}(?:\d{3})?(?:\d{3})?\b
- Mastercard(51–55 / 2221–2720):
\b(?:5[1-5]\d{14}|2(?:2[2-9]\d{2}|[3-6]\d{3}|7[01]\d{2}|720\d{2})\d{10})\b
- 日本のマイナンバー(形式のみ・検査なし):
^\d{12}$
- 郵便番号+住所行(簡易):
^\d{3}-\d{4}\s+.+$
- XSS の <script> タグ検出(簡易):
<\s*script\b[^>]*>[\s\S]*?<\s*\/\s*script\s*>
- SQL っぽい単語(簡易):
\b(SELECT|INSERT|UPDATE|DELETE|DROP|ALTER|CREATE)\b
(i)
※ 個人情報や機密情報の抽出・検証に使う場合は必ず法/社内規程をご確認ください。
ログ・フォーマット
- Apache/Nginx CLF(簡易):
^(\S+)\s+(\S+)\s+(\S+)\s+\[([^\]]+)\]\s+"([^"]+)"\s+(\d{3})\s+(\d+|-)
- ISO8601 タイムスタンプ抽出:
\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})
- JSON ライン(1行=1 JSON):
^\{.*\}$
(m) - UUID 抽出:
[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}
(i) - IP 抽出(IPv4 簡易):
\b(?:\d{1,3}\.){3}\d{1,3}\b
Markdown
- 見出し(#~######):
^(#{1,6})\s+(.+)$
(m) - リンク:
\[([^\]]+)\]\(([^)]+)\)
- 画像:
!\[([^\]]*)\]\(([^)]+)\)
- インラインコード:
`([^`]+)`
- コードブロック(```…``` 簡易):
```[\s\S]*?```
- 箇条書き(- * +):
^\s*[-*+]\s+.+$
(m) - 引用 >:
^\s*>\s+.+$
(m)
日本語表記・文字種(Unicode, uフラグ推奨)
- ひらがなのみ:
^[\u3041-\u3096]+$
(u) - カタカナのみ:
^[\u30A1-\u30FA\u30FC]+$
(u) - 半角カタカナのみ:
^[\uFF66-\uFF9D\uFF70]+$
(u) - 漢字を含む:
[\u4E00-\u9FFF]
(u) - 全角文字のみ:
^[^\x00-\x7F]+$
- 英数全角:
^[\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A]+$
(u) - 郵便番号(全角数字対応・簡易):
^[0-9\d]{3}-[0-9\d]{4}$
(u) - ふりがな(全角カナ):
^[\u30A1-\u30FA\u30FC\s]+$
(u)
テキスト整形・抽出ユーティリティ
- 先頭の番号「1. 」除去:
^\s*\d+\.\s*
(m) - 箇条書きプレフィックス除去:
^\s*(?:[-*+]|•|\d+\.)\s*
(m) - 括弧内抽出(丸括弧):
\(([^)]*)\)
- 二重引用符内抽出:
"([^"\\]|\\.)*"
- 日本円金額「¥123,456」抽出:
¥\s?\d{1,3}(?:,\d{3})*
- メールドメイン抽出:
@([A-Za-z0-9.-]+\.[A-Za-z]{2,})
- HTML タグ除去(簡易):
<[^>]+>
- 重複スペース→1つ:
\s{2,}
その他便利
- 日本の車両ナンバー(超簡易):
^[\u3041-\u3096\u30A1-\u30FA\u4E00-\u9FFF]{1,2}\s?\d{3,4}$
(u) - YouTube 動画ID:
(?<=v=|youtu\.be\/)[A-Za-z0-9_-]{11}
- Twitter/X ユーザー @handle:
@[A-Za-z0-9_]{1,15}
- Slack チャンネル:
#[a-z0-9_-]{1,80}
- 色名(CSSキーワード少数・例):
\b(?:red|green|blue|black|white|gray|silver|maroon)\b
(i) - 括弧で囲まれた注釈〔…〕抽出:
[([^]]*)]|【([^】]*)】|〔([^〕]*)〕
(u) - 半角カナ→検出:
[\uFF61-\uFF9F]
(u) - 英単語(ハイフン含む):
\b[A-Za-z]+(?:-[A-Za-z]+)*\b
- メール本文の注文番号(例 #12345):
#\d{4,}
- 日本の駅名(末尾「駅」):
.+駅\b
(u)
※ 上記は「よく使う・そのまま貼って概ね使える」実務寄りの簡易版です。厳密検証(うるう年/国際化ドメイン/完全なHTMLパース等)は個別の専用ロジックやライブラリをご検討ください。