ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript 正規表現を使用して電子メール アドレスを検証するにはどうすればよいですか?

JavaScript 正規表現を使用して電子メール アドレスを検証するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-26 10:40:11746ブラウズ

How Can I Validate Email Addresses Using JavaScript Regular Expressions?

JavaScript の正規表現を使用した電子メールの検証

ユーザーの誤入力を防ぐために、JavaScript では送信を試行する前に電子メール アドレスを検証できます。サーバーに送信するか、サーバーに電子メールを送信しようとします。

最も信頼できるアプローチJavaScript で電子メール アドレスを検証するには、正規表現を使用します。次の正規表現は ASCII 文字を受け入れます:

const validateEmail = (email) => {
  return String(email)
    .toLowerCase()
    .match(
      /^(([^<>()[\]\.,;:\s@"]+(\.[^<>()[\]\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
    );
};

Unicode サポートの場合、より包括的な正規表現を使用できます:

const re =
  /^(([^<>()[\]\.,;:\s@"]+(\.[^<>()[\]\.,;:\s@"]+)*)|(".+"))@(([^<>()[\]\.,;:\s@"]+\.)+[^<>()[\]\.,;:\s@"]{2,})$/i;

ただし、JavaScript の検証では使用できないことを覚えておくことが重要です。一人で頼られる。クライアント側の検証は簡単にバイパスされます。サーバー側の検証も必要です。

クライアント側での JavaScript 電子メール検証の例を次に示します。

const validateEmail = (email) => {
  return email.match(
    /^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
  );
};

const validate = () => {
  const $result = $('#result');
  const email = $('#email').val();
  $result.text('');

  if(validateEmail(email)){
    $result.text(email + ' is valid.');
    $result.css('color', 'green');
  } else{
    $result.text(email + ' is invalid.');
    $result.css('color', 'red');
  }
  return false;
}

$('#email').on('input', validate);

この例では、ボタンを使用して検証をトリガーし、結果。

以上がJavaScript 正規表現を使用して電子メール アドレスを検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。