0

这些数字是可以接受的:

(0123) 456789

(01 23) 45 67-89

0123/456789

+49(0)123-456789

我的模式应该是什么样子?/^[0-9]+$/;...

我不知道如何整合加法符号,“空格”等......

4

2 回答 2

0

/^+?([0-9]{2}))?[-. ]?([0-9]{4})[-. ]?([0-9]{4})$/;

但您绝对应该查看 http://www.regular-expressions.info/tutorial.html并根据您的需要修改此正则表达式

于 2013-06-04T16:24:09.267 回答
0

如果你去掉所有不是数字的东西然后根据它来验证它,这会容易得多。所以首先。

var barePhoneNumber = number.replace(/[^0-9]/g, '');

然后,一个非常简单的 if 测试。如果以 49 开头,则 12 个字符是可以的,否则只有 10 个。

var validLength = basePhoneNumber.substr(0, 2) === '49' ? 12 : 10;
if( basePhoneNumber.length === validLength )){ 
   // It's valid! 
}
于 2013-06-04T16:32:46.013 回答