【问题标题】:How can I check these double Regex我如何检查这些双重正则表达式
【发布时间】:2019-04-14 06:26:20
【问题描述】:

我想检查电话号码是否有 8 位数字并且不是以零开头。我为此使用了^[1-9][0-9]{7}这个模式,我还想检查这8个数字是否像1111111177777777一样完全重复,为此我使用这个模式:(\w)\1{7,},分别检查数字是否'不匹配。

现在我想将这些 Regex 模式组合在一起,但我不能。我尝试以这种方式组合这些模式: (?=([1-9][0-9]{7}))(?:(?!(\w1{7,}))) 但不幸的是它不起作用。

请注意,我必须使用一种 Regex 模式,并且需要将这两种模式合并为一个。

谁能帮帮我?

【问题讨论】:

    标签: javascript c# regex string validation


    【解决方案1】:

    这只是您需要检查的第一个字符,它看起来像 - 在一个组中捕获它,然后对该组重复 7 次使用负前瞻,以确保整个字符串不是完全相同的数字,然后以\d{7} 匹配其他 7 位数字:

    ^([1-9])(?!\1{7})\d{7}$
    

    https://regex101.com/r/DbTtAJ/1

    (注意[0-9] 简化为\d

    【讨论】:

      猜你喜欢
      • 2012-12-12
      • 2018-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-17
      • 1970-01-01
      相关资源
      最近更新 更多