【发布时间】:2013-07-17 11:06:33
【问题描述】:
我正在使用 Asp.Net RegularExpressionValidator 来验证电话号码。
检查是非常基本的 - 一个数字可以是 10 或 11 个字符的长度,全是数字并且从 01 或 02 开始。
这是正则表达式:
^0[12]\d{8,9}$
不过,我最近开始与执行更严格规则的第三方合作。在我看来,这是一个坏主意——部分原因是他们甚至不发布这些规则,而且它们可能会发生变化,因此会在所有合作伙伴之间进行维护。不过……
我现在需要将他们添加的内容合并到我的正则表达式中,但我不确定从哪里开始。
他们目前在 OR 中使用 2 个单独的正则表达式来执行此操作,但如果可能的话,我想在 1 中执行此操作。
附加语法应确保 10 位电话号码也遵守这些附加规则 - 这是它们的 10 位语法。
"^01(204|208|254|276|297|298|363|364|384|386|404|420|460|461|480|488|524|527|562|566|606|629|635|647|659|695|726|744|750|768|827|837|884|900|905|935|946|949|963|995)[0-9]{5}$
关于如何实现这一点的任何想法?
【问题讨论】:
-
您是否在检查输入是否符合
regex1ANDregex2或regex1ORregex2? -
只能是10位或11位数字
-
你没有得到我的问题。如果它只能是 10 位或 11 位数字,那么
[0-9]{10,11}就可以了。我在问你如何检查两个正则表达式?您在 if 语句中使用的是and还是or? -
我觉得这个问题完全有道理,但是如果有人认为应该关闭它,请勇敢地给出一个理由!
-
我正在使用单个 Asp.Net 验证器 - 正则表达式。
标签: regex