【问题标题】:How to validate the following phone numbers?如何验证以下电话号码?
【发布时间】:2013-06-04 16:16:56
【问题描述】:

这些数字是可以接受的:

(0123) 456789

(01 23) 45 67-89

0123/456789

+49(0)123-456789

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

不知道加法符号、“空格”等具体怎么整合……

【问题讨论】:

  • 我建议学习正则表达式或聘请了解它的人。如果失败,请使用您尝试过的模式。从我看到的地方来看,我会为每个验证使用不同的模式,因为字符串彼此之间非常不同。

标签: jquery regex phone-number


【解决方案1】:

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

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

【讨论】:

  • 这对我不起作用......当我使用这种模式时,我什至无法使用包含电话号码字段的公式开始(它位于叠加层中)
【解决方案2】:

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

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! 
}

【讨论】:

    猜你喜欢
    • 2016-04-06
    • 1970-01-01
    • 1970-01-01
    • 2012-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多