【问题标题】:Validation for xxx-xxx-xxxx or (xxx)xxx-xxxx [duplicate]验证 xxx-xxx-xxxx 或 (xxx)xxx-xxxx [重复]
【发布时间】:2012-11-20 16:28:09
【问题描述】:

可能重复:
A comprehensive regex for phone number validation

什么是正则表达式

xxx-xxx-xxxx
or
(xxx)xxx-xxxx

我可以为第一个创建正则表达式

/^\d{3}-\d{3}-\d{4}$/

但是如何在其中添加规则以便它也可以处理第二个?

【问题讨论】:

  • 为什么不去掉所有不是数字的东西,然后检查长度?

标签: javascript regex


【解决方案1】:

我不是大师,但这应该可以解决问题;

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

【讨论】:

  • 准确地说,这也将匹配 - xxx-(xxx)xxx-xxxx,但同样没有指定 OP 不想匹配的内容。所以,这是一个有效的解决方案。
【解决方案2】:

你可以使用这个:-

/^(?:\(\d{3}\)|\d{3}-)\d{3}-\d{4}$/

【讨论】:

    【解决方案3】:
    /^(\(\d{3}\))|(\d{3}-)\d{3}-\d{4}$/
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-19
      • 2017-10-25
      • 2016-06-04
      • 2020-10-18
      • 2011-09-02
      相关资源
      最近更新 更多