ac#winforms应用程序中的电子邮件验证

Nag*_*agu 5 c# validation winforms

您好我如何在c#winforms中验证电子邮件?

The*_*iot 9

您可以使用正则表达式来验证电子邮件地址:

RegEx reg=new RegEx(@"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,6}$", RegexOptions.IgnoreCase); ///Object initialization for Regex 
if(reg.IsMatch("email string"))
    //valid email
Run Code Online (Sandbox Code Playgroud)

  • 这仅在不区分大小写时才有效.包括`RegexOptions.IgnoreCase` (4认同)

Use*_*ser 8

最好的方法是将此验证任务转发给.NET本身:

public bool IsValidEmailAddress (string email)
{
    try
    {
        MailAddress ma = new MailAddress (email);

        return true;
    }
   catch
   {
        return false;
   }
}
Run Code Online (Sandbox Code Playgroud)

当然,它会在某些技术上有效的电子邮件地址(例如非拉丁字符)中引发误报,但由于无论如何它都无法发送到这些地址,您也可以从一开始就过滤它们.


dev*_*vio 2

该页面有一个很好的正则表达式匹配电子邮件地址。

请记住,这只是一张正式支票。要检查电子邮件地址是否确实存在,您必须向该地址发送一封实际的电子邮件并检查邮件服务器的响应。

即使成功,SMTP 服务器也可能配置为忽略无效的收件人地址。