正则表达式检查至少3个字符?

我有这个正则表达式只允许字母数字字符.

如何检查字符串是否至少包含3个字母字符.

我目前的正则表达式,

if(!/^[a-zA-Z0-9]+$/.test(val))

我想强制执行字符串以确保至少有3个连续的字母字符;

111 // false
aaa1 // true
11a // false
bbc // true
1a1aa // false
要在任何地方强制使用三个字母
/(.*[a-z]){3}/i

应该足够了.

编辑.啊,你编辑了你的问题,说三个字母字符必须是连续的.我还看到您可能希望强制所有字符都应与您的“已接受”字符匹配.然后,前瞻可能是最干净的解决方案:

/^(?.*[a-z]{3})[a-z0-9]+$/i

请注意,我使用不区分大小写的修饰符/ i,以避免必须编写a-zA-Z.

另类.你可以阅读更多关于lookaround assertions here的信息.但是在这个阶段你可能会有点过头了.这里有一个替代方案,你可能会发现你已经知道的更容易分解:

/^([a-z0-9]*[a-z]){3}[a-z0-9]*$/i

相关文章

正则替换html代码中img标签的src值在开发富文本信息在移动端...
正则表达式
AWK是一种处理文本文件的语言,是一个强大的文件分析工具。它...
正则表达式是特殊的字符序列,利用事先定义好的特定字符以及...
Python界一名小学生,热心分享编程学习。
收集整理每周优质开发者内容,包括、、等方面。每周五定期发...