可能重复:
电子邮件地址中允许使用哪些字符?
在 C# 中,我不知道为什么 MailAddress 接受带有单引号的电子邮件地址,例如'a''a'@gmail.com
... , 稍后会收到一封失败的电子邮件...即使在注册期间,它也不允许使用单引号的新电子邮件'
...您知道带有单引号的有效电子邮件地址吗?它是有效的格式吗?
对不起,我的意思是单引号
可能重复:
电子邮件地址中允许使用哪些字符?
在 C# 中,我不知道为什么 MailAddress 接受带有单引号的电子邮件地址,例如'a''a'@gmail.com
... , 稍后会收到一封失败的电子邮件...即使在注册期间,它也不允许使用单引号的新电子邮件'
...您知道带有单引号的有效电子邮件地址吗?它是有效的格式吗?
对不起,我的意思是单引号
我建议你为什么不在发送电子邮件之前验证你的电子邮件
这样您将立即获得反馈什么是有效的电子邮件
不是最理想的方法,但是您可以像这样使用 MailAddress 类
MailAddress mailAddress = null;
try
{
mailAddress = new MailAddress("a'@gmail.com");//email address with single quote in it
}
catch(Exception exception)
{
//If emailAdress is not correct then warn user
}
根据RFC 2822第 3.2.4 节,电子邮件地址中允许使用单引号(请参阅 atext 的定义方式):
atext = ALPHA / DIGIT / ; Any character except controls,
"!" / "#" / ; SP, and specials.
"$" / "%" / ; Used for atoms
"&" / "'" /
"*" / "+" /
"-" / "/" /
"=" / "?" /
"^" / "_" /
"`" / "{" /
"|" / "}" /
"~"
您可能还想根据我们的免费电子邮件验证服务快速检查您的可疑电子邮件地址,该服务严格遵循上述 RFC(以及其他)并基于我们的 Microsoft .NET电子邮件验证组件。