正则要求是:小写字母开头,+数字/字母/减号,最少3位,最长16位。
我自己参考了一些百度的资料,就差一点点就ok了,现在有个小问题,调不出来。
/^[a-z][a-z1-9-]{3,16}$/
我输入 4个a,aaaa 是不匹配的。这个满足最小长度3。
我输入 17个a, 还是匹配了。输入19个a,才不匹配。
应该是17个a,就不匹配了。就false了。
这个是咋回事,按照那个表达式理解,好像没什么错误,实际是不行。
正则要求是:小写字母开头,+数字/字母/减号,最少3位,最长16位。
我自己参考了一些百度的资料,就差一点点就ok了,现在有个小问题,调不出来。
/^[a-z][a-z1-9-]{3,16}$/
我输入 4个a,aaaa 是不匹配的。这个满足最小长度3。
我输入 17个a, 还是匹配了。输入19个a,才不匹配。
应该是17个a,就不匹配了。就false了。
这个是咋回事,按照那个表达式理解,好像没什么错误,实际是不行。
13 回答13k 阅读
7 回答2.2k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.3k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
6 回答1.1k 阅读
因为
{n, m}
表示匹配前面的字符至少n
次,最多m
次。所以你的正则表达式匹配的是最少4位,最长17位。所以只需要将你的正则表达式改为/^[a-z][a-z1-9-]{2,15}$/
即可