Javascript 将总字符限制添加到regexp
我有下面的正则表达式,它工作得很好,但是我需要对字符数增加一个全面的限制,这样它的长度就不能超过50Javascript 将总字符限制添加到regexp,javascript,regex,Javascript,Regex,我有下面的正则表达式,它工作得很好,但是我需要对字符数增加一个全面的限制,这样它的长度就不能超过50 ^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$ 有什么想法吗?我尝试在不同的地方添加{1,50},但没有一个成功 我知道电子邮件地址可以超过50个字符,但出于我不想说的原因,我需要限制它。您可以将正则表达式的
^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
有什么想法吗?我尝试在不同的地方添加{1,50},但没有一个成功
我知道电子邮件地址可以超过50个字符,但出于我不想说的原因,我需要限制它。您可以将正则表达式的正文包装在非捕获组中,并将50个字符的限制放在那里:
^(?:([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)){1, 50}$
您可以将正则表达式的主体包装在非捕获组中,并将50个字符的限制放在该组中:
^(?:([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)){1, 50}$
您可能不应该将其添加到正则表达式中,因为它似乎已经相当复杂了。相反,在评估和返回通过/失败标准所需的任何内容之前,您可能应该考虑捕获字符串长度
var inp = document.getElementById('myinput');
inp.onkeyup = function() {
alert(inp.value.length);
}
另外,您可以简单地限制HTML中的输入字段长度
<input type="text" id="Textbox" name="Textbox" maxlength="50" />
您可能不应该将其添加到正则表达式中,因为它似乎已经相当复杂了。相反,在评估和返回通过/失败标准所需的任何内容之前,您可能应该考虑捕获字符串长度
var inp = document.getElementById('myinput');
inp.onkeyup = function() {
alert(inp.value.length);
}
另外,您可以简单地限制HTML中的输入字段长度
<input type="text" id="Textbox" name="Textbox" maxlength="50" />
如果需要知道字符串是否少于50个字符,可以在执行regexp之前检查它的
length
属性。像这样的方法应该会奏效:
if ( emailString.length <= 50 ) {
// The string is an acceptable length, apply regexp check
} else {
// The string is too long, no need to check via regexp
}
if(emailString.length如果需要知道字符串是否少于50个字符,可以在执行regexp之前检查它的length
属性。类似这样的操作应该可以:
if ( emailString.length <= 50 ) {
// The string is an acceptable length, apply regexp check
} else {
// The string is too long, no need to check via regexp
}
if(emailString.length为什么不在执行正则表达式验证后执行长度检查?为什么不在执行正则表达式验证后执行长度检查?谢谢…我真的应该停止让事情复杂化!@Tom我也倾向于这样做:).有时候退一步想清楚为什么这么难是件好事。很高兴它起到了作用!谢谢……我真的应该停止把事情复杂化!@Tom我也倾向于这么做:)。有时候退一步想想为什么这么难是件好事。很高兴它有帮助!