如何使用RegularExpression验证器验证电子邮件地址?

Ram*_*ngh 0 c# regex asp.net email validation

我使用以下代码验证电子邮件地址:

<asp:RegularExpressionValidator ID="EmailAddressFormatValidator" runat="server" 
     ControlToValidate="EmailAddressTextBox" 
     ErrorMessage="RegularExpressionValidator" 
     Display="Dynamic" 
     ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" 
     EnableClientScript="False">Email Address is not valid.<br />       
</asp:RegularExpressionValidator>
Run Code Online (Sandbox Code Playgroud)

它工作正常,但当用户在电子邮件的末尾输入""(空格)时,它会停止工作并宣布有效的电子邮件无效,请帮我解决这个问题.

ael*_*lor 5

添加\s*到你有正则表达式的末尾

像这样

\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*\s*
Run Code Online (Sandbox Code Playgroud)

我在这里设置了一个演示

http://regex101.com/r/tX7mA8

我在这里使用的正则表达式是 ^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*\s*$

我对你的语言并不多,所以我认为默认情况下那些锚标签会出现在那里