带短划线的正则表达式电话号码

时间:2015-06-30 16:13:36

标签: regex

我正在尝试使用将验证以下格式的正则表达式:

234-567-8901
1-234-567-8901

我尝试了各种各样的例子,但不知道如何得到一个可以考虑可能的1-在乞讨和仍然有效的234-567-8901。

规则是,任何数字,2或3个破折号,如果3个破折号然后是11个数字,如果2个破折号则是10个数字。

^[0-9-]*$
^[\d-]+$
^[\d-]+$

2 个答案:

答案 0 :(得分:6)

您可以使用:

^(1-)?\d{3}-\d{3}-\d{4}$

答案 1 :(得分:0)

 telephone: function (val, field) {
    return /^(\d{3}[-]?){1,2}(\d{4})$/.test(val);
},
telephoneText: "Invalid phone number",
telephoneMask: /[\d-]/

查看https://regex101.com/以测试您的正则表达式。