カテゴリ: JavaScript 更新日: 2026/01/18

JavaScriptの正規表現を使ったバリデーション例まとめ

JavaScriptの正規表現を使ったバリデーション例まとめ
JavaScriptの正規表現を使ったバリデーション例まとめ

先生と生徒の会話形式で理解しよう

生徒

「JavaScriptで入力されたデータが正しいか確認する方法ってありますか?」

先生

「あります。正規表現を使うと、メールアドレスや電話番号、パスワードなどの形式を簡単にチェックできます。」

生徒

「正規表現って難しそうですが、具体的な例を教えてもらえますか?」

先生

「もちろんです。今回はJavaScriptの正規表現を使った代表的なバリデーション例をまとめて紹介します。」

1. メールアドレスのバリデーション

1. メールアドレスのバリデーション
1. メールアドレスのバリデーション

メールアドレスの形式を確認するには、@やドメインの部分を正規表現でチェックします。


function validateEmail(email) {
  const regex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
  return regex.test(email);
}
console.log(validateEmail("test@example.com")); // true
console.log(validateEmail("test@@example.com")); // false

ここでは、英数字やドット、ハイフンなどを許可し、@とドメイン部分の形式を確認しています。

2. 電話番号のバリデーション

2. 電話番号のバリデーション
2. 電話番号のバリデーション

日本の電話番号をチェックする場合、数字とハイフンの形式を確認できます。


function validatePhone(phone) {
  const regex = /^\d{2,4}-\d{2,4}-\d{4}$/;
  return regex.test(phone);
}
console.log(validatePhone("03-1234-5678")); // true
console.log(validatePhone("0312345678"));   // false

正規表現で桁数やハイフンの位置を指定して、正しい形式だけを通すことができます。

3. パスワードのバリデーション

3. パスワードのバリデーション
3. パスワードのバリデーション

安全なパスワードには、英大文字・小文字・数字・特殊文字を含めることが望ましいです。


function validatePassword(password) {
  const regex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\d)(?=.*[!@#$%^&*]).{8,}$/;
  return regex.test(password);
}
console.log(validatePassword("Abc123!@")); // true
console.log(validatePassword("abc123"));   // false

この正規表現では、先読みを使ってそれぞれの条件を確認しています。8文字以上であることもチェックしています。

4. 郵便番号のバリデーション

4. 郵便番号のバリデーション
4. 郵便番号のバリデーション

日本の郵便番号は、3桁-4桁の形式が一般的です。


function validateZip(zip) {
  const regex = /^\d{3}-\d{4}$/;
  return regex.test(zip);
}
console.log(validateZip("123-4567")); // true
console.log(validateZip("1234567"));  // false

ハイフンの有無や桁数を正規表現で制御できます。

5. URLのバリデーション

5. URLのバリデーション
5. URLのバリデーション

WebサイトのURLをチェックする場合、httphttpsを含む形式を確認します。


function validateURL(url) {
  const regex = /^https?:\/\/[^\s/$.?#].[^\s]*$/;
  return regex.test(url);
}
console.log(validateURL("https://example.com")); // true
console.log(validateURL("ftp://example.com"));   // false

正規表現で先頭のスキームを確認し、空白が含まれないかもチェックできます。

6. バリデーションをまとめて活用するポイント

6. バリデーションをまとめて活用するポイント
6. バリデーションをまとめて活用するポイント
  • 正規表現を使うことで入力形式のチェックが簡単にできる
  • 複雑な条件でも先読み・後読みを使うと実用的
  • メールアドレス、電話番号、パスワード、郵便番号、URLなど共通のパターンをまとめて使うと便利
  • 初心者はまず簡単な形式から試すことが大切

JavaScriptの正規表現を覚えると、フォーム入力のバリデーションやデータ検証が効率的に行えます。繰り返し練習して慣れることが上達の近道です。

カテゴリの一覧へ
新着記事
New1
JavaScript
JavaScriptの正規表現を使ったバリデーション例まとめ
New2
TypeScript
TypeScriptのexport defaultとexportの使い分けを完全解説!モジュールの基本
New3
JavaScript
JavaScriptの正規表現でlookahead・lookbehindを使う応用例
New4
TypeScript
TypeScriptの配列型・タプル型の使い方と違いをやさしく解説!初心者でも理解できる型の基本
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.2
Java&Spring記事人気No2
JavaScript
JavaScriptの正規表現で繰り返し指定(* + ? {n,m})を学ぼう
No.3
Java&Spring記事人気No3
JavaScript
JavaScriptで日時の差分を計算する方法|ミリ秒・日数の応用テクニック
No.4
Java&Spring記事人気No4
JavaScript
JavaScriptプログラムの実行方法まとめ!ブラウザ・Node.js・コンソールの使い方
No.5
Java&Spring記事人気No5
TypeScript
TypeScriptモジュールと名前空間を完全解説!分割して管理する基本構文
No.6
Java&Spring記事人気No6
JavaScript
JavaScriptの正規表現で任意の1文字(.)や文字クラスを使う方法
No.7
Java&Spring記事人気No7
JavaScript
JavaScriptの正規表現で文字列を置換する方法(replaceメソッド)
No.8
Java&Spring記事人気No8
TypeScript
TypeScriptでコメントを書く正しい書き方と使い分け【初心者向けにやさしく解説】