首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带掩码的正则表达式

带掩码的正则表达式
EN

Stack Overflow用户
提问于 2010-04-11 16:06:50
回答 4查看 25.1K关注 0票数 0

我有一个电话号码的正则表达式,如下所示:^[01]?[- .]?(\([2-9]\d{2}\)|[2-9]\d{2})[- .]?\d{3}[- .]?\d{4}$

我在电话号码文本框中有一个以下格式的掩码:(___)___-____

如何修改正则表达式以使其适应掩码?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-04-12 00:26:42

(占位符)掩码的表达式为

^\(_{3}\)_{3}-_{4}$

有效电话号码的表达式为

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

掩码使用_代替数字,因此您需要使用[\d_]作为字符类,以便在用户键入时进行匹配。

^\([\d_]{3}\)[\d_]{3}-[\d_]{4}$

显然,如果用户切换字段,如果您的phone字段作为其中的任何剩余_,您将希望返回一个错误。phone.match(/_/) == null在这里应该可以做到这一点:)

票数 2
EN

Stack Overflow用户

发布于 2010-04-11 16:13:52

您的问题有点不明确;如果您想要一个与该掩码匹配的正则表达式,它是:

代码语言:javascript
复制
^\([0-9]{3}\)[0-9]{3}-[0-9]{4}$
票数 1
EN

Stack Overflow用户

发布于 2010-06-29 01:55:57

ValidationExpression="\([2-9]\d{2}\)\d{3}-\d{4}$|^\(_{3}\)\ _{3}-_{4}$"

这将验证掩码和(234)432-4322,但不允许用户输入(434)88_-_

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2616395

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档