tom*_*msv 6 javascript regex jquery email-validation
可能重复:
在Javascript中验证电子邮件地址?
我知道没有办法只使用正则表达式来验证电子邮件地址,但我认为我应该能够拒绝一些明显无效的电子邮件地址,以便帮助那些错误输入不同内容的友好用户,例如他们的名字或密码.电子邮件地址栏.所以,我不想拒绝任何有效的电子邮件地址,但是想要拒绝尽可能多的无效电子邮件格式,只使用正则表达式.但我想任何javascript/jquery/...都可以.
这是我到目前为止:
^.+@.+\..+$
Run Code Online (Sandbox Code Playgroud)
是的,没有真正的验证正则表达式,但应该有一些拒绝.不,这不会阻止任何人输入虚假地址.是的,您仍然需要发送确认电子邮件以验证真实情况.
上面的正则表达式将用于javascript.
-
在.NET中,我会让.NET使用来验证电子邮件格式
try
{
var mailAddress = new MailAddress(possibleMailAddress);
}
Run Code Online (Sandbox Code Playgroud)
如果没问题,请检查域部分的DNS记录,看是否有可能存在电子邮件服务器.只有当DNS记录清楚地表明没有电子邮件服务器或者没有这样的域时,电子邮件地址才会被拒绝.然后缓存一些结果,以加快将来的查找速度.
不过,我必须发送确认电子邮件进行验证......
官方标准RFC 2822使用此正则表达式描述了有效电子邮件地址的语法:
(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])
Run Code Online (Sandbox Code Playgroud)