フォームに入力したメールアドレスが、有效なものかどうかをチェックしたい瞬间があるだろう。タイポ检测にも使えるし、无效なアドレスの注册を防ぐこともできる。
メールアドレスの構造
メールアドレスは「ローカル部 @ ドメイン部」という構成になっている。ローカル部には英数字と一部の記号が入り、ドメイン部にはドメイン名とExtension)が入る。
具体的な规则はRFC 5321という规格で定められているが、简单には「○○@△△.com」这个样子だ。ただ、実際にはもっと复杂な规则がある。
形式検証(Syntax Validation)
最も简单な验证は、形式的に正しいかどうかを確認するものだ。正規表現を使って、アドレスのフォーマットが规格に合っているかをチェックする。
これは计算机的に简单に检查できる。但し、形式的に正しくても、そのアドレスが本当に存在するとは限らない。
DNS確認
より深度な確認として、DNSでドメインの存在を验证する方法がある。MXレコード(メール服务器的ホスト名)を検索して、そのドメインがメールを受け取れる状態かどうかを確認する。
これにより、存在しないドメインへのメール发送を防ぐことができる。ただし、DNS查询には时间とコストがかかるので、大量に処理する場合には注意が必要だ。
まとめ
メールアドレスの検証は、简单な形式確認からDNS查询まで、深度に段階がある。用途に応じて適切なレベルの確認方法を選ぼう。
メールアドレス検証はぽっと索のメールアドレス検証器で试试看。