我一直在努力寻找一个好的正则表达式来验证电子邮件。
我已经完成了比较电子邮件地址验证正则表达式,但这并不能满足我所有的验证需求。我有 Google/Bing(ed) 并扫描前 50 个奇怪的结果,包括正则表达式信息文章和其他东西。
所以最后我用这个System.Net.Mail.MailAddress
类来验证我的电子邮件地址。因为,如果失败,我的电子邮件将不会发送给用户。
我想自定义类的构造函数使用的验证。
那么我该如何继续获取 MailAddress 类正在使用的验证/RegEx?
我一直在努力寻找一个好的正则表达式来验证电子邮件。
我已经完成了比较电子邮件地址验证正则表达式,但这并不能满足我所有的验证需求。我有 Google/Bing(ed) 并扫描前 50 个奇怪的结果,包括正则表达式信息文章和其他东西。
所以最后我用这个System.Net.Mail.MailAddress
类来验证我的电子邮件地址。因为,如果失败,我的电子邮件将不会发送给用户。
我想自定义类的构造函数使用的验证。
那么我该如何继续获取 MailAddress 类正在使用的验证/RegEx?
不,它不使用正则表达式,而是一个复杂的过程,需要很长时间才能在这里解释。我怎么知道?我查看了使用 .NET Reflector 的实现。你也可以:D
谢谢Reflector...忘了你还是有空的!
反映了 System.Net.Mail.MailAddress...
发现它使用了一个void ParseValue(string address)
及void GetParts(string address)
初步检查邮件地址格式的方法。
//已编辑
令人惊讶的是,没有涉及 RegEx!
根据反射器,该类根本不使用正则表达式。