【问题标题】:RegEx for phone number, all zeros not allowed电话号码的正则表达式,不允许全零
【发布时间】:2013-08-01 04:31:59
【问题描述】:

在 RegEx 方面需要您的帮助。我当前的正则表达式是 /^\d{8,}$/ - 最小长度为 8,不允许使用字母、特殊字符和空格。我也想禁止像 00000000 这样的全零

谢谢!

【问题讨论】:

  • 如果我的电话号码是 500-0000 怎么办?
  • 嗨...编辑了我的帖子...
  • 为此使用 c# 代码。差别不大

标签: c# regex validation


【解决方案1】:

这个模式应该可以满足你的需求:^(?!0+$)\d{8,}$

(?!0+$) 部分是负前瞻,可防止仅输入零。

例子:

var pattern = @"^(?!0+$)\d{8,}$";
var inputs = new[]
{
    "00000000",         // false
    "(123) 456-789",    // false
    "123",              // false
    "01234567",         // true
    "500000000",        // true
    "123456789"         // true
};

foreach (var input in inputs)
{
    Console.WriteLine("{0}: {1}", Regex.IsMatch(input, pattern), input);
}

【讨论】:

    猜你喜欢
    • 2011-08-27
    • 2015-03-29
    • 1970-01-01
    • 1970-01-01
    • 2017-09-23
    • 2014-02-15
    • 1970-01-01
    相关资源
    最近更新 更多