[英]Requires regex for US Phone Format
我需要一个与美国电话稍有不同的正则表达式。 实际上,在我的页面上,我有一个用于输入的文本框,在这里我放置了正则表达式验证器和正则表达式,以验证999-999-9999
的邮政编码。 直到这里一切都很好。 稍后我们添加了MaskedEditor扩展程序,以避免在电话号码代码之间手动添加。 而且,ClearMaskOnLostFocus设置为false。 因此,每次我们在文本框中输入___-___-____
。 而且我的验证器现在总是针对无效输入对其进行验证。
所以最后我想说,我需要一个正则表达式,如果我的手机是有效的美国电话,并且也通过___-___-____
,它将匹配。
[现有正则表达式]
^[0-9]{3}[\-]{1}[0-9]{3}[\-]{1}[0-9]{4}$
用Javascript-在这里:
/^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$/;
它来自Google。http: //www.zparacha.com/phone_number_regex/
这是部分的:
/^ = match must start with - no chars before
\(? = optional left brace
(\d{3}) = 3 digits
\)? = optional right brace
[- ]? = optional hyphen or space
(\d{3}) = 3 digits
[- ]? = optional hyphen or space
(\d{4}) = 4 digits
$/ = match must end here - no chars after
只需使用以下内容:
(<your current regex>)|(___-___-____)
PhoneFormat.com有一个javascript库,该库将采用您要扔给它的任何数字,采用的格式以及正确格式化的格式。 如果您通过___-___-____
或999-999-9999
它将可以正常处理。
尝试查看libphonenumber以获得灵感或使用。 它具有与此相关的大多数内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.