繁体   English   中英

使用正则表达式设置字符数限制

[英]Set character limit with regex

我有一个表达式,该表达式只允许字符并且也拒绝任何空格。

我如何限制字符数,例如说7个字符。 尽管可以使用maxlength属性,但是正则表达式是我的首选方法,尽管我可以使用maxlength属性,但我正在此功能上用于输入字段上的keyup事件。

event.target.value.replace(/[^a-zA-Z]/g, '');

您可以设置最小/最大字符数,例如: /[^a-zA-Z]{7,}/g

但是,我看到您只想接受最多7个字符的字母,可以只使用.substr(0,7) ,您可以这样做:

 document.querySelector("input").onkeyup = function(event){ event.target.value = event.target.value.replace(/[^a-zA-Z]/g, '').substr(0,7); } 
 <input type="text" value="" /> 

您可以使用{} 限制字符的重复 。例如,如果要使用{7}匹配与[^a-zA-Z]匹配的7个字符,请执行以下操作:

[^a-zA-Z]{7}

还有一个附加的量词,可让您指定令牌可以重复多少次。 语法为{min,max},其中min为零或表示最小匹配数的正整数,而max是等于或大于min的整数,表示最大匹配数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM