syuichi-tsuji
6/10/2013 - 11:21 AM

RFC 5322 準拠の、メールアドレス判別のための正規表現。

RFC 5322 準拠の、メールアドレス判別のための正規表現。

// comment 、 IP アドレス表記には未対応。
var emailReg = /^([-!#-'*+/-9=?A-Z^-~]+(\.([-!#-'*+/-9=?A-Z^-~]+|"([!#-\[\]-~]|\\[\x00-~])+"))*|"([!#-\[\]-~]|\\[\x00-~])+")@([-!#-'*+/-9=?A-Z^-~]+(\.[-!#-'*+/-9=?A-Z^-~]+)*)$/;

// RFC 822 との互換性を考慮しない
var emailReg = /^([-!#-'*+/-9=?A-Z^-~]+(\.[-!#-'*+/-9=?A-Z^-~]+)*|"([!#-\[\]-~]|\\[\x00-~])+")@([-!#-'*+/-9=?A-Z^-~]+(\.[-!#-'*+/-9=?A-Z^-~]+)*)$/;

// ダブルクオート内であっても制御文字を許可しない
var emailReg = /^([-!#-'*+/-9=?A-Z^-~]+(\.[-!#-'*+/-9=?A-Z^-~]+)*|"([!#-\[\]-~]|\\[\x09 -~])+")@([-!#-'*+/-9=?A-Z^-~]+(\.[-!#-'*+/-9=?A-Z^-~]+)*)$/;

// ローカルパートにおけるピリオドの連続を許可する(ただし先頭のピリオドは許可しない)
var emailReg = /^([-!#-'*+/-9=?A-Z^-~][!#-'*+\--9=?A-Z^-~]*|"([!#-\[\]-~]|\\[\x09 -~])+")@([-!#-'*+/-9=?A-Z^-~]+(\.[-!#-'*+/-9=?A-Z^-~]+)*)$/;

// ドメインパートが FQDN でないものは許可しない
var emailReg = /^([-!#-'*+/-9=?A-Z^-~][!#-'*+\--9=?A-Z^-~]*|"([!#-\[\]-~]|\\[\x09 -~])+")@([-!#-'*+/-9=?A-Z^-~]+(\.[-!#-'*+/-9=?A-Z^-~]+)+)$/;