我想匹配一个只包含正好 7 位或 9 位数字的字符串。
/^\d{7}$|^\d{9}$/
有没有另一种写法,类似于/\d{7,8}/
7 位或 8 位数字?
这个怎么样:
/^\d{7}(?:\d{2})?$/
解释:
^ # Start of string
\d{7} # Match 7 digits
(?: # Try to match...
\d{2} # 2 digits
)? # ...optionally
$ # End of string
替代方案:
/^(\d{7}|\d{9})$/
使用这个正则表达式
^\d{7}(\d{2})?$
匹配 7 位数字,然后匹配可选的两位数字。
/^\d{7}(\d{2})?/