首页 / C# / 正文

C#验证电子邮箱的正则表达式

26904 发布于: 2014-07-30 读完约需3分钟

正则表达式真是我一个最头疼的问题啊,一直想好好研究一下把它弄清楚是怎么回事,但又一直弄得糊里糊涂的,连做个邮箱地址的验证正则还是吃力,先记录一下这个邮箱验证正则表达式。

([0-9a-zA-Z]([+-\_.][0-9a-zA-Z]+)\*)+@(([[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})(]?)

该正则表达式用于匹配电子邮件地址。它可以在C#中用来验证一个字符串是否符合电子邮件地址的格式。下面是该正则表达式的详细解释:

  1. ([0-9a-zA-Z]([+-\_.][0-9a-zA-Z]+)\*)+ 匹配邮件地址中的用户名部分。它包括以下几个部分:一个数字或字母,后面可能跟着一个加号、减号、下划线或点,再后面跟着一个或多个数字或字母,这个部分可以重复出现一次或多次。

  2. @ 匹配邮件地址中的“@”符号。

  3. (([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([a-zA-Z0-9-]+.)+)) 匹配邮件地址中的域名部分。它可以是一个数字组成的IP地址,也可以是一个由字母、数字、短横线和点组成的域名。

  4. ([a-zA-Z]{2,4}|[0-9]{1,3}) 匹配邮件地址中的顶级域名部分。它可以是一个2到4个字母的英文单词,也可以是一个1到3个数字的IP地址。

  5. (]?) 匹配可选的右括号,该右括号用于匹配一些老旧邮件客户端在邮件地址中使用的特殊字符。

这个正则表达式可以用于验证用户输入的电子邮件地址是否符合标准格式。在C#中,可以使用System.Text.RegularExpressions.Regex类来实现正则表达式的匹配。例如,以下代码可以验证一个字符串是否是合法的电子邮件地址:

string email = "example@example.com";
bool isValidEmail = Regex.IsMatch(email, @"([0-9a-zA-Z]([+-\_.][0-9a-zA-Z]+)\*)+@(([[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})(]?)");

版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。

上一篇: Mysql查询后按匹配度(相关度)分页排序

下一篇: C#4.0中var和dynamic的区别

本文永久链接码友网 » C#验证电子邮箱的正则表达式

分享扩散:

发表评论

登录用户才能发表评论, 请 登 录 或者 注册