如何在 c# 中使用正则表达式验证以下不正确的电子邮件地址?
例如:
test@test.com.net.com
或者
test@test.net.net.org
这些正在被验证为正确的电子邮件地址。有什么想法吗?谢谢
如何在 c# 中使用正则表达式验证以下不正确的电子邮件地址?
例如:
test@test.com.net.com
或者
test@test.net.net.org
这些正在被验证为正确的电子邮件地址。有什么想法吗?谢谢
虽然test@test.com.net.com
和test@test.net.net.org
都是有效的,但从句法的角度来看,它们的域部分并不指向现有域。对于这种测试,您可能希望提取您感兴趣的域部分并查询 DNS(请参阅RFC 2821和RFC 2822)以查看它是否存在。
由于您使用的是 .NET,顺便说一下,我建议您看看我们的EmailVerify.NET,这是一个领先的电子邮件验证库,可以验证语法(根据最新的 IETF 标准)、域部分和存在您的电子邮件地址的邮箱。
您可能只想使用类似的东西:
[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?
有关列表,请参阅此页面。
请考虑这个正则表达式:
([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})
它将匹配所有电子邮件地址,如果与电子邮件地址不匹配,则电子邮件广告格式不正确,希望对您有所帮助:)