正则表达式为10位数字

时间:2015-12-02 05:31:20

标签: regex

10位数字,可能采用以下格式:123-4-567890,1234-567890或1234567890

以上数字的正则表达式是什么?

感谢任何帮助。

感谢。

1 个答案:

答案 0 :(得分:0)

假设你的意思是任何数字,0-9,如果(并且只有)它符合你提出的三种格式,那么一个可行的正则表达式

(([0-9]{3}-[0-9]{1}-[0-9]{6})|([0-9]{4}-[0-9]{6})|([0-9]{10}))

上面分解为三种不同的模式,每种情况对应一种情况,由正则表达式相当于“或”,|字符分隔。上面的每个语句都包含[0-9],一个匹配任何数字的字符类。每个字符类后面都是{n}语句,表示“重复上一个项目n次”。

免责声明,有一种更聪明的方法可以用更短的模式来做到这一点,但我的正则表达式还不是那么先进