1

我需要一个简单的 javascript 正则表达式来验证电话号码。只有数字,“+”开头和“-”
数字的最大和最小长度应该是10 - 12

应该允许下一个电话:
1. +380631505624
2. 0631505624
3. 063-15-05-624

不允许使用以下电话:
1. +38063+1505624
2. asd0631505624
3. -063-15-05-624-
4. +0---3-1--24

4

2 回答 2

1

Quentin 的评论是要走的路,但是满足您需求的正则表达式可能是:

^\+?\d+(\d\-|\d)+\d$

我希望它有所帮助,或者至少是朝着正确方向发展的一点

这完全取决于您要检查的保存/严格程度

BTW .: javascript ist 看起来像这样吗

 ...
 if (/^\+?(\d\-|\d)+\d$/ig.test("+43595-995-995")){
    alert("GOOD");
 }
 ...

在这里您可以找到使用 Chrome 24+ 测试的工作演示(在 JsFiddler 上)(包含您问题的所有数字)

于 2013-02-04T11:38:03.017 回答
0

在上面的代码中没有任何长度验证,所以我只是更正上面的答案

http://jsfiddle.net/KRwHQ/4/

 if (/^\+?((\d\-|\d)+\d){4,}$/ig.test("+43595-995-995")){
     alert("GOOD");
 }
于 2017-07-04T05:29:26.683 回答