如何在 C# 中验证电子邮件地址?

2023年 8月 27日 50.8k 0

如何在 C# 中验证电子邮件地址?

在 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)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论