Asp.net 正则表达式检查电子邮件是否有效以及是否包含多个字符
我正试图用这个正则表达式验证电子邮件地址。*@.*\..*我只是想知道如何更改它以同时检查字符串是否多于一个字符?您不需要使用正则表达式进行长度检查,只需使用字符串长度选项:Asp.net 正则表达式检查电子邮件是否有效以及是否包含多个字符,asp.net,regex,validation,Asp.net,Regex,Validation,我正试图用这个正则表达式验证电子邮件地址。*@.*\..*我只是想知道如何更改它以同时检查字符串是否多于一个字符?您不需要使用正则表达式进行长度检查,只需使用字符串长度选项: string Email = "tom@tom.com"; // Regex checks here if(Email.Length > 1){ } 此外,我建议不要验证电子邮件地址。这非常复杂,更多信息请参见此问题: 您不需要使用正则表达式进行长度检查,只需使用字符串长度选项: string Email =
string Email = "tom@tom.com";
// Regex checks here
if(Email.Length > 1){
}
此外,我建议不要验证电子邮件地址。这非常复杂,更多信息请参见此问题:
您不需要使用正则表达式进行长度检查,只需使用字符串长度选项:
string Email = "tom@tom.com";
// Regex checks here
if(Email.Length > 1){
}
此外,我建议不要验证电子邮件地址。这非常复杂,更多信息请参见此问题:
用正则表达式验证电子邮件地址并非易事。请参阅和。使用正则表达式验证电子邮件地址并非易事。请参见和。
+@.*.*.*.
也会执行此操作+.*.*.*.
也会执行此操作使用+
说明符而不是*.
来确保至少有一个字符:
.+@.+\..+
这实际上将确保至少有五个字符,因为你不能拥有一个少于五个字符的公共电子邮件地址。您可以进行更详细的检查(例如基于域名的最小长度和允许的字符),但这至少涵盖了最基本的要求。使用
+
说明符,而不是*
,以确保至少有一个字符:
.+@.+\..+
这实际上将确保至少有五个字符,因为你不能拥有一个少于五个字符的公共电子邮件地址。您可以进行更详细的检查(例如,基于域名的最小长度和允许的字符),但这至少涵盖了最基本的要求。使用下面的电子邮件验证
function chkEmail(theField,msg)
{
var a=theField.value;
var reg_mail=(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+(\.[A-Za-z0-9]{2,3})(\.[A-Za-z0-9]{2,3})?$/);
if((a.search(reg_mail)==-1))
{
alert(msg);
theField.focus();
return false;
}
return true;
}
使用下面的长度
if(document.getElementById('id').value.length > 1)
{
}
使用下面的电子邮件验证
function chkEmail(theField,msg)
{
var a=theField.value;
var reg_mail=(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+(\.[A-Za-z0-9]{2,3})(\.[A-Za-z0-9]{2,3})?$/);
if((a.search(reg_mail)==-1))
{
alert(msg);
theField.focus();
return false;
}
return true;
}
使用下面的长度
if(document.getElementById('id').value.length > 1)
{
}
如果字符串必须包含
@
和
,那么它已经有2个字符了。是的,但是当我在asp正则表达式验证器中使用此表达式时,当字段为空时,它不会显示消息?如果字符串必须包含@
和
,它已经有2个字符。是的,但是当我在asp正则表达式验证器中使用此表达式时,当字段为空时,它不会显示消息?您的正则表达式不匹配tld likemuseum
或info
您的正则表达式不匹配tld likemuseum
或info
使用此表达式时,我仍然没有收到错误消息在asp.net正则表达式验证程序控件中。该页面似乎无效,因为它不会发布,但如果我将其留空,则电子邮件字段旁边没有消息。如果我写一些类似“test”的东西,它与表达式不匹配,就会出现这种情况。@phil crowe:RegularExpressionValidator只在有数据的情况下验证数据。您还需要一个RequiredFieldValidator使空白值的验证失败。@phil-这正是为什么您应该始终准确地解释您试图做什么,以及什么不起作用的原因。这里的regex根本不是问题,另一个regex也不能解决您的问题。我试图尽可能避免使用requiredfield验证器,所以基本上您不能通过正则表达式来检查这一点@科比:我确实有更多的解释,但stack overflow一直说我可以在没有解释的情况下发布我的问题,有人建议把它放低。@phil crowe:没错,RegularExpressionValidator无法用于使字段成为必需字段。在asp.net正则表达式验证程序控件中使用它时,我仍然没有收到错误消息。该页面似乎无效,因为它不会发布,但如果我将其留空,则电子邮件字段旁边没有消息。如果我写一些类似“test”的东西,它与表达式不匹配,就会出现这种情况。@phil crowe:RegularExpressionValidator只在有数据的情况下验证数据。您还需要一个RequiredFieldValidator使空白值的验证失败。@phil-这正是为什么您应该始终准确地解释您试图做什么,以及什么不起作用的原因。这里的regex根本不是问题,另一个regex也不能解决您的问题。我试图尽可能避免使用requiredfield验证器,所以基本上您不能通过正则表达式来检查这一点@kobi我确实有更多的解释,但stack overflow一直说我可以在没有解释的情况下发布我的问题,有人建议将其简化。@phil crowe:没错,RegularExpressionValidator不能用于将字段设为必填字段。