日常开发中,判断邮箱是少不了的,这个我以C#为例,来写一个判断方法,正则表达式是通用的,CV就可以
首先引入正则需要使用的命名空间
//正则验证引用 using System.Text.RegularExpressions;
判断是否为QQ邮箱
/// <summary> /// 验证QQ邮箱 /// </summary> /// <param name="mail">邮箱</param> /// <returns></returns> public static bool CheckMail(string mail) { string str = @"^[1-9][0-9]{4,}@qq.com$"; Regex mReg = new Regex(str); if (mReg.IsMatch(mail)) { return true; } return false; }
这里是使用正则判断是否为QQ邮箱方法,正则表达式在下方
^[1-9][0-9]{4,}@qq.com$
判断是否为邮箱
这里我们先了解一下常用的邮箱域名后缀,目前除了许多个人企业邮箱和域名邮箱,基本上正常邮箱都是com
和net
域名。
所以我们的正则表达式直接限制成@**.com
结尾或者@**.net
结尾.
/// <summary> /// 验证是否为邮箱 /// </summary> /// <param name="mail"></param> /// <returns></returns> public static bool CheckAllMail(string mail) { string str = @"^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(com|cn|net)$"; Regex mReg = new Regex(str); if (mReg.IsMatch(mail)) { return true; } return false; }
下面是正则表达式
^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(com|cn|net)$
我这里设置的域名有com、cn和net,也就是说,允许域名为com、cn和net的个人邮箱匹配哦。