日期:2014-05-18  浏览次数:21063 次

输入邮件地址的判断
现在要实现对textbox中的输入的邮件地址的判断,比如我要输入的邮件地址的合法格式是含有"@163.com",怎么实现判断,用C#实现,请高手指教!

------解决方案--------------------
正则表达式
var patrn4=/^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*(\.[a-zA-Z0-9]+[-a-zA-Z0-9]*)+[a-zA-Z0-9]+$/;

//if(patrn1.exec(param.Value) && !patrn2.exec(param.Value))
if(!patrn4.exec(param.Value))
{
param.IsValid = false;
}
else
{
param.IsValid = true;
}
这个是js版本的,c#差不多的,,楼主看看
------解决方案--------------------


 string TTT = "123123.123";

System.Text.RegularExpressions.Regex _Rex = new System.Text.RegularExpressions.Regex("[a-zA-Z0-9]@[a-zA-Z0-9].[a-zA-Z0-9]");
MessageBox.Show(_Rex.IsMatch(TTT).ToString());
------解决方案--------------------
·由字母a~z(不区分大小写)、数字0~9、点、减号或下划线组成
·只能以数字或字母开头和结尾,例如:beijing.2008
·用户名长度为4~18个字符
 
 
很多邮箱对用户名的限制都有所不同,163的邮箱就有以上限制。因此,正则可以这样写:
C# code

using System.Text.RegularExpressions;

Regex reg=new Regex(@"(?i)^[A-Z0-9][a-zA-Z_\-\.]{3,17}@163\.com$");
if(reg.IsMatch("你的字符串"))
{
 //验证通过
}