我在电子邮件字段验证中使用了正则表达式。 但是在我的网站上使用会话和身份验证之后,正则表达式都没有为我工作。
任何人都可以帮助我摆脱这个???
答案 0 :(得分:0)
没有代码很难回答你的问题。
但我个人不会使用正则表达式来验证电子邮件地址。见this question
我喜欢这种方法:
protected void emailValidator_ServerValidate(object source, ServerValidateEventArgs args)
{
try
{
var a = new MailAddress(txtEmail.Text);
}
catch (Exception ex)
{
args.IsValid = false;
emailValidator.ErrorMessage = "email: " + ex.Message;
}
}
这也可能具有教育意义:I Knew How To Validate An Email Address Until I Read The RFC
答案 1 :(得分:0)
在asp.net的regularrexpression验证器控件下尝试此代码----> ^ [_ A-ZA-Z0-9 - ] +([_ A-ZA-Z0-9 - ]。+) @ [A-ZA-Z0-9 - ] +([A-ZA-Z0- 9 - ] +)(([0-9] {1,3})|([A-ZA-Z] {2,3})|(航空|鸡舍|信息|博物馆|名称)。 )$
答案 2 :(得分:0)
最佳验证方法是发送确认电子邮件。
这篇文章是一个很好的介绍原因:
http://www.regular-expressions.info/email.html
如果你真的想要一个RFC2822正则表达式,那么它就是:
(?:[!?一个-Z0-9#$%&安培;' + / = ^ _
{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_
{|}〜 - ] +) |“(?: [\ x01- \ X08 \ X0B \ X0C \ x0e- \ X1F \ X21 \ x23- \ x5b \ x5d- \ 0x7F部分] | \ [\ x01- \ X09 \ X0B \ X0C \ x0e- \ 0x7F部分]) “)@(:( ?:一个-Z0-9)+ A-Z0-9 |???[(:( ?: 25 [0-5] | 2 [0-4] [0-9] | [01] [0-9] [0-9])){3}(?: 25 [0-5] |?2 [0-4] [0-9] | [01] [0 -9] [0-9] | [A-Z0-9 - ] [A-Z0-9]:?(:[\ x01- \ X08 \ X0B \ X0C \ x0e- \ X1F \ X21 - \ X5A \ x53- \ 0x7F部分] | \ [\ x01- \ X09 \ X0B \ X0C \ x0e- \ 0x7F部分])+)])