我在我的应用程序中使用RFC 5322的简化正则表达式来验证任何可能的电子邮件地址:
[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?
但是,我注意到字符串test@test.t
对此正则表达式有效(在RegExr上测试):
根据IANA,没有一个有效的顶级域名只包含1个字符。
我真正怀疑的是:RFC 5322是获得电子邮件验证正则表达式的可靠来源吗?我可以用别的吗?或test@test.t
对某些特定情况真的有效吗?