Regex 如何使以下正则表达式不允许空白电子邮件?

Regex 如何使以下正则表达式不允许空白电子邮件?,regex,asp-classic,Regex,Asp Classic,我使用以下正则表达式来验证电子邮件,但它也允许空字符串,我如何更改它以防止它: ^[\w\.\-]+@[a-zA-Z0-9\-]+(\.[a-zA-Z0-9\-]{1,})*(\.[a-zA-Z]{2,3}){1,2}$ 我使用的是asp:RegularExpressionValidator。我的另一个选择是添加一个asp:RequiredFieldValidator,但我很好奇这是否可以检查我的RegularExpressionValidator中的空格,因此我不必有2个正则表达式来验证给定

我使用以下正则表达式来验证电子邮件,但它也允许空字符串,我如何更改它以防止它:

^[\w\.\-]+@[a-zA-Z0-9\-]+(\.[a-zA-Z0-9\-]{1,})*(\.[a-zA-Z]{2,3}){1,2}$

我使用的是asp:RegularExpressionValidator。我的另一个选择是添加一个asp:RequiredFieldValidator,但我很好奇这是否可以检查我的RegularExpressionValidator中的空格,因此我不必有2个正则表达式来验证给定字符串是否为有效的电子邮件格式:

/^[a-zA-Z0-9\_\-\.]+\@([a-zA-Z0-9\-]+\.)+[a-zA-Z0-9]{2,4}$/

此正则表达式验证给定字符串是否为有效的电子邮件格式:

/^[a-zA-Z0-9\_\-\.]+\@([a-zA-Z0-9\-]+\.)+[a-zA-Z0-9]{2,4}$/

请参见

请参见该表达式与空字符串不匹配。表达式以
^[\w\.\-]+
开头,这表示“字符串必须以单词字符、句点或斜杠开头。这些字符可以不止一个。”一定是有其他错误,或者您复制的表达式不正确。

该表达式与空字符串不匹配。表达式以
^[\w\.\-]+
开头,这意味着“字符串必须以单词字符、句点或斜杠开头。这些字符可以不止一个。”一定是有其他错误,或者您复制了错误的表达式。

当我将其放入asp:RegularExpressionValidator时,它告诉我它不是一个有效的正则表达式。不是真的,一些允许的字符(例如+)丢失了。我对正则表达式不熟悉,所以我不知道如何读取它。我刚从网上找到了上面的一个。@Xaisoft:那么最好添加信息,您需要ASP的正则表达式。这是一个Perl正则表达式@Ofir:IMHO+是不允许出现在电子邮件Adress中的,到目前为止我还从未见过。但是如果是这样,我们也可以将其添加为允许的字符:)字符
+
是有效的!当我把它放到asp:RegularExpressionValidator中时,它告诉我它不是有效的正则表达式。不是真的,一些允许的字符(例如+)丢失了。我对正则表达式不熟悉,所以我不知道如何读取它。我刚从网上找到了上面的一个。@Xaisoft:那么最好添加信息,您需要ASP的正则表达式。这是一个Perl正则表达式@Ofir:IMHO+是不允许出现在电子邮件Adress中的,到目前为止我还从未见过。但是如果是这样,我们也可以将其添加为允许的字符:)字符
+
是有效的!可能重复的可能重复的我已经看过这个网站很多次了。非常好。再次感谢您的链接。我在这里发现了一些好东西。我已经看过这个网站很多次了。非常好。再次感谢您的链接。我在这里发现了一些好东西。或者ASP位接受空字符串,尽管正则表达式阻止了它们-我想我已经看到了前面提到的类似内容。这是你的答案。如果输入控件为空,则验证成功。如果关联的输入控件需要值,请在RegularExpressionValidator控件之外使用RequiredFieldValidator控件或者ASP位接受空字符串,尽管正则表达式阻止了它们-我想我已经看到了类似于前面提到的内容。这是你的答案。如果输入控件为空,则验证成功。如果关联的输入控件需要值,请在RegularExpressionValidator控件之外使用RequiredFieldValidator控件