/\d{,5}/.test('')
我以为那是一回事,但显然不是。为什么一个人会这么想?
最佳答案
量词 {n1,n2}
是一个有效的 JavaScript 正则表达式量词,它将匹配 n1 到 n2 次(含)。
但是,{,n}
不表示量词,因为需要最小界限。有关语法产生式和规则,请参阅 15.10.2.7 Quantifier 部分。
以下都介绍了一个有效的范围量词:
/\d{3,5}/.test('12') // false
/\d{3,5}/.test('1234') // true
/\d{3,5}/.test('123456') // false
另一方面,以下正则表达式不会创建量词。相反,产生式被解析为没有特殊含义的文字文本:
/a{,5}b/.test('a{,5}b') // true, at least in Chrome and IE
关于javascript - 我是错觉了,还是 JS RegExp 支持可选的重复范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20135178/