我有一个电话号码的正则表达式,如下所示:^[01]?[- .]?(\([2-9]\d{2}\)|[2-9]\d{2})[- .]?\d{3}[- .]?\d{4}$
我在电话号码文本框中有一个以下格式的掩码:(___)___-____
如何修改正则表达式以使其适应掩码?
发布于 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在这里应该可以做到这一点:)
发布于 2010-04-11 16:13:52
您的问题有点不明确;如果您想要一个与该掩码匹配的正则表达式,它是:
^\([0-9]{3}\)[0-9]{3}-[0-9]{4}$发布于 2010-06-29 01:55:57
ValidationExpression="\([2-9]\d{2}\)\d{3}-\d{4}$|^\(_{3}\)\ _{3}-_{4}$"
这将验证掩码和(234)432-4322,但不允许用户输入(434)88_-_
https://stackoverflow.com/questions/2616395
复制相似问题