当前位置: 代码迷 >> ASP.NET >> Email正则,请大家帮看看,再想想办法。该怎么解决
  详细解决方案

Email正则,请大家帮看看,再想想办法。该怎么解决

热度:6847   发布时间:2013-02-25 00:00:00.0
Email正则,请大家帮看看,再想想办法。
我想把Email中如下格式的定为非法如:“@-”(例:hanguoji@-f21.com)
下面是现在用的验证Email的正则表达式:

Regex.IsMatch(strIn,   @ "^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$ ");


请大家帮忙改改谢谢!!

------解决方案--------------------------------------------------------
只是@后不能为- ?

@ "^([\w-\.]+)@(?!-)((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$ "
------解决方案--------------------------------------------------------
string sourceString = @ "hanguoji@f21.com ";
string pattern = @ "^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([^-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$ ";
System.Text.RegularExpressions.Match result = Regex.Match(sourceString,pattern,System.Text.RegularExpressions.RegexOptions.IgnoreCase);

if (result.Success)
{
//提示正确信息
//WL( "正确: " + result.Groups[1].Value);//输出
WL( "正确: " + result.Value);//输出
}
else
{
//提示错误信息
WL( "错误! ");//输出
}

-------------------------------------------
MSN:bdbox@hotmail.com
请给我与您交流的机会
------解决方案--------------------------------------------------------
ValidationExpression= "\w+([-+. ']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* ">
  相关解决方案