代码之家  ›  专栏  ›  技术社区  ›  jbk

如何正则表达式验证100000-999999999范围内的数字字符串?

  •  1
  • jbk  · 技术社区  · 6 年前

    这是我的尝试,似乎从测试工作,任何正则表达式专业人士有任何更好的建议或看到任何问题?

    ^([1-9]|[1-9]\d|[1-9]\d\d|[1-9]\d\d\d)(\d{5})$

    2 回复  |  直到 6 年前
        1
  •  4
  •   ndnenkov    6 年前

    您可以通过给出最小和最大数量的数字将所有情况统一为一个:

    ^[1-9]\d{5,8}$
    
        2
  •  0
  •   Aleksei Matiushkin    6 年前

    如果你只需要检查字符串,我相信这更具表现力:

    (100000..999999999).cover?(input[/\A\d+\z/].to_i)