2017-02-06 81 views
-6

我正在寻找一个正则表达式接受10个数字或8位数字后跟一个破折号,然后是2个数字。例子:正则表达式的数字和破折号

1212345678 

12345678-91 
+2

你有没有试过自己做一个?我通常参考[regexr](http://regexr.com/)以供参考。 –

+1

向我们展示您的尝试。 –

+0

你能给出一个MOT匹配的相似值列表吗? – Cedric

回答

1

如果你只是想检查,如果输入的是没有任何内容相匹配的有效的,这应该是足够了:

^\d{8}-?\d\d$ 

与8个数字开头,后面(或者不是)一个可选的仪表板,而另一直到最后2位数字。

0

这应该工作。

((?:^[0-9]{10})|(?:^[0-9]{8}(?:\-\d{2})*))$ 

输入:

1212345678 
12345678-91 
12345678901112-10 
1234567890-12 

输出:

1212345678 
12345678-91 

见:https://regex101.com/r/AzbVXt/2

0

^\ d {8}(\ d {2})( - \ d {2})?$ ^和$:从乞讨到结尾的匹配

\ d {8}:8位数 (\ d {2})? :可选两个其他数字

( - \ d {2})? :可选的破折号,与其他两位

这将匹配

不1212345678001

1212345678-

1212345678-00

不1212345678 -001

相关问题