我有以下正则表达式
\d{2,4}\-\d{6,8}
但是当连字符之前匹配4位数时,是否可以匹配连字符后的6位数,我只想匹配以下情况:
XX-XXXXXXXX
XXX-XXXXXXX
XXXX-XXXXXX
其中X是数字。
答案 0 :(得分:2)
除了单独的部分之外,您可以做的是验证总长度。长度:
^(?=[\d-]{11}$)\d{2,4}-\d{6,8}$
然而在这种情况下,列出3个备选方案似乎更简单,如Wiktor Stribiżew所评论:
^(?:\d{2}-\d{8}|\d{3}-\d{7}|\d{4}-\d{6})$