カテゴリ: 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
TypeScript
TypeScriptで非同期処理とループを極める!for await ofの使い方完全ガイド
New2
TypeScript
TypeScriptのvoid型とunknown型をやさしく解説!初心者でもわかる使い分け
New3
TypeScript
TypeScript学習におすすめの無料教材・リファレンスサイト【初心者向け】
New4
JavaScript
JavaScriptで複数の要素を一括操作するテクニックを完全解説!querySelectorAll入門
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.2
Java&Spring記事人気No2
JavaScript
JavaScriptのクロージャーとは?仕組みと実践例をやさしく解説
No.3
Java&Spring記事人気No3
TypeScript
TypeScriptのプロジェクトをtscでビルドする基本操作を解説!初心者にもわかるステップバイステップ
No.4
Java&Spring記事人気No4
JavaScript
JavaScriptで新しい要素を作成する方法(createElement, appendChildなど)
No.5
Java&Spring記事人気No5
JavaScript
JavaScriptのonclick・onchangeなどの基本イベントを理解しよう
No.6
Java&Spring記事人気No6
JavaScript
JavaScriptで親要素・子要素・兄弟要素を取得する方法を初心者向けに徹底解説
No.7
Java&Spring記事人気No7
TypeScript
TypeScriptのファイル分割とimport/exportの基本を徹底解説!初心者でも安心のやさしい入門
No.8
Java&Spring記事人気No8
JavaScript
JavaScriptプログラムの実行方法まとめ!ブラウザ・Node.js・コンソールの使い方