我有以下正则表达式:^([0-9]{1,4}(\-?)){3}[0-9]{1,4}$
实际上,它匹配1234
我想强制只匹配 6 个或更多数字(即不包括破折号),例如。 1234 12 或 12 1 123 或 1 1 123 1 或 1-12-12-2222 或 1-123 2 2 等
有没有简单的方法可以做到这一点?
最佳答案
您可以将此正则表达式与前瞻性一起使用以断言至少存在 6 位数字:
/^(?=(?:\D*\d){6})(?:\d{1,4}[ -]?){3}\d{1,4}$/gm
这里 (?=(?:\D*\d){6})
是一个积极的前瞻,当至少有 6 个数字且中间有 0 个或多个非数字时断言为真.
关于javascript - 正则表达式中字符的最小长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51426063/