2013-02-14 85 views
1

我有电子邮件验证正则表达式这样ValidationExpression中的RegularExpressionValidator

<asp:TextBox ID="TxtEmail" runat="server"></asp:TextBox> 
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
ControlToValidate="TxtEmail" ErrorMessage="*" ForeColor="#007528" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([.]\w+)*">  </asp:RegularExpressionValidator> 

它不接受以下邮件ADRES:[email protected]

如何编辑正则表达式?

+0

你不应该使用正则表达式来进行电子邮件验证,尽管有一个接受有效的电子邮件 – SztupY 2013-02-14 13:18:30

回答

0

选中此项:Email Regular Expressions

例如:

<asp:TextBox ID="TxtEmail" runat="server"></asp:TextBox> 
<asp:RegularExpressionValidator ID="RegularExpressionValidator2" runat="server" 
ControlToValidate="TxtEmail" ErrorMessage="*" ForeColor="#007528" 
ValidationExpression="^[a-zA-Z0-9\\_\\-]+[a-zA-Z0-9\\.\\_\\-]*@([a-zA-Z0-9\\_\\-]+\.)+([a-zA-Z]{2,4}|travel|museum)$"></asp:RegularExpressionValidator> 

试试这个: 电子邮件正则表达式:

^[a-zA-Z0-9\_\-]+[a-zA-Z0-9\.\_\-]*@([a-zA-Z0-9\_\-]+\.)+([a-zA-Z]{2,4}|travel|museum)$ 
+0

不允许这种格式,我试过了。 – baros 2013-02-14 13:31:13

+0

它的工作。我已经测试过....只需复制粘贴我的示例。 – 2013-02-14 13:32:21

0

我认为在ASP.Net的Visual Studio为您提供了常见的正则表达式验证如电话号码和电子邮件一些选择。对于电子邮件我使用下面的正则表达式,它适用于你的例子:

^[a-zA-Z0-9._%-][email protected][a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$ 
+0

我试过了,它不接受。 – baros 2013-02-14 13:27:12

0

你的正则表达式的问题是,不接受 - +。如果没有伴随字母数字字符,再加上接受其他东西,如[email protected]#safd作为有效字符串,直到#字符,可以使用表达式^\w+([-+.']+\w*)*@\w+([-.]\w+)*\.\w+([.]\w+)+$我在开始和结尾处添加行的开始和行尾,以及将([-+.']+\w+)更改为([-+.']+\w*)以接受零个或更多字母数字字符。我希望这个帮助。

相关问题