在 C# 中验证电子邮件地址有多种方法。
System.Net.Mail -System.Net.Mail 命名空间包含用于将电子邮件发送到的类用于传送的简单邮件传输协议 (SMTP) 服务器。
System.Text.RegularExpressions - 表示不可变的正则表达式。
使用以下表达式
@"^([a-zA-Z0-9_-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([a-zA-Z0-9-]+.)+))([azA-Z]{2,4}|[0-9]{1,3})(]?)$"
登录后复制
我们可以使用 System.Net.Mail 命名空间的 MailAddress 类来验证电子邮件地址
示例
实时演示
using System;
using System.Net.Mail;
namespace DemoApplication{
class Program{
public static void Main(){
try{
string email = "hello@xyzcom";
Console.WriteLine($"The email is {email}");
var mail = new MailAddress(email);
bool isValidEmail = mail.Host.Contains(".");
if(!isValidEmail){
Console.WriteLine($"The email is invalid");
} else {
Console.WriteLine($"The email is valid");
}
Console.ReadLine();
}
catch(Exception){
Console.WriteLine($"The email is invalid");
Console.ReadLine();
}
}
}
}
登录后复制
输出
上述代码的输出为
The email is hello@xyzcom
The email is invalid
登录后复制
使用正则表达式的示例 -
我们还可以使用正则表达式来验证电子邮件地址。
示例
using System;
using System.Text.RegularExpressions;
namespace DemoApplication{
public class Program{
public static void Main(){
string email = "hello@xyz.com";
Regex regex = new Regex(@"^([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})(]?)$",
RegexOptions.CultureInvariant | RegexOptions.Singleline);
Console.WriteLine($"The email is {email}");
bool isValidEmail = regex.IsMatch(email);
if (!isValidEmail){
Console.WriteLine($"The email is invalid");
} else {
Console.WriteLine($"The email is valid");
}
Console.ReadLine();
}
}
}
登录后复制
输出
上述代码的输出为
The email is hello@xyz.com
The email is valid
登录后复制
以上就是如何在 C# 中验证电子邮件地址?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!