电子邮件验证表达

时间:2014-04-02 09:23:15

标签: c# asp.net

写完这篇文章之后,同时在输入电子邮件时它显示错误信息并且工作正常。我不知道最近发生了什么。任何人请解释一次。提前致谢

<asp:RequiredFieldValidator ID="Txt5" runat="server" ControlToValidate="TextBox5" ValidationGroup="abc" ErrorMessage="*"></asp:RequiredFieldValidator>
        <asp:RegularExpressionValidator ID="Txt05" runat="server" ControlToValidate = "TextBox5" Display ="Dynamic" ValidationExpression="^\w+([-+.']\w+)*@domain.com$" ErrorMessage="Please enter valid email address.."></asp:RegularExpressionValidator>

2 个答案:

答案 0 :(得分:4)

请使用此作为您的正则表达式:

ValidationExpression="[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@
(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?"

如需进一步说明,请参阅here

就像现在一样,您的正则表达式仅匹配域名等于domain和.com扩展名的电子邮件地址。当然,这是一个问题,因为xzxzx@yahoo.gr是一个有效的电子邮件地址,您的reg exp不会将其评估为有效的电子邮件地址。 (xzxzx将是一些名字)

答案 1 :(得分:0)

根据您的表达式,它会在每个电子邮件地址的末尾显示@domain.com。 因此,&#39; something@domain.com'不会显示任何错误消息.. 试试帖子Using a regular expression to validate an email address

中提到的表达式