コンテンツへ移動

正規表現テスター

JavaScript の正規表現をリアルタイムでテスト、デバッグ、検証できます。メール検証、URL 解析、パスワード強度の確認に便利です。

/

/g

フラグ

マッチ結果

6 件マッチ

Hello World from Gemini CLI. This is a Test string.
#マッチ位置グループ
1Hello0$1: H
2World6$1: W
3Gemini17$1: G
4CLI24$1: C
5This29$1: T
6Test39$1: T
履歴

保存したパターンがここに表示されます。

チートシート

.改行以外の任意の文字
\w単語文字(英数字 + _)
\d数字(0-9)
\s空白文字
[abc]a、b、c のいずれか
[^abc]a、b、c 以外

^文字列/行の先頭
$文字列/行の末尾
\b単語境界

*0 回以上
+1 回以上
?0 回または 1 回
{3}ちょうど 3 回
{3,}3 回以上

(...)キャプチャグループ
(?:...)非キャプチャグループ
(?<name>...)名前付きキャプチャグループ
(?=...)先読み
(?!...)否定先読み
(?<=...)後読み

よくある正規表現の質問

正規表現でメールアドレスを検証するには?

簡単なパターンは ^[\w.-]+@([\w-]+\.)+[\w-]{2,4}$ です。上に貼り付けてメール一覧で試せます。

拡張子だけを取り出すには?

\.[0-9a-z]+$ で文字列末尾の拡張子にマッチします。ファイル種類の絞り込みに便利です。

8 文字以上、かつ英字と数字をそれぞれ 1 つ以上含むか確認するには?

先読みを使います: ^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$。パスワード強度チェックの定番です。

正規表現が余分にマッチしてしまうのはなぜ?

.* のような貪欲な量指定子を使っている可能性があります。疑問符を付けて怠惰にします: .*?。

IPv4 アドレスにマッチするには?

^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)\.?\b){4}$ で標準的な IP アドレスを検証できます。

YYYY-MM-DD 形式の日付にマッチするには?

^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$ で有効な ISO 日付を確認できます。

16 進カラーコードにマッチするには?

^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$ で標準的な 16 進カラー(例: #fff や #000000)にマッチします。

ユーザー名(英数字、3〜16 文字)を検証するには?

小文字、数字、アンダースコア、ハイフンを許可する場合は ^[a-z0-9_-]{3,16}$ を使います。

URL(http/https)にマッチするには?

https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*) で一般的なウェブアドレスにマッチします。

HTML タグにマッチするには?

<\/?([a-z][a-z0-9]*)\b[^>]*> で開始タグと終了タグを探せます(正規表現で HTML を解析するのは一般に壊れやすい点に注意)。

URL スラッグにマッチするには?

^[a-z0-9]+(?:-[a-z0-9]+)*$ で URL 向けスラッグ(例: this-is-a-slug)を検証できます。

24 時間形式の時刻にマッチするには?

^([01]\d|2[0-3]):?([0-5]\d)$ で HH:MM の時刻文字列を検証できます。