数字和破折号的正则表达式

时间:2017-02-06 14:40:43

标签: regex

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

1212345678

12345678-91

3 个答案:

答案 0 :(得分:1)

如果你只想检查输入是否有效而没有匹配任何内容,那么这个就足够了:

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

从8位开头,跟随(或不跟)可选短划线,另外2位数字一直到最后。

答案 1 :(得分: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

答案 2 :(得分:0)

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

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

( - \ d {2})? :可选短划线,带有两个其他数字

这将匹配

1212345678

121234567800

不是1212345678001

1212345678 -

1212345678-00

不是1212345678-001