代码之家  ›  专栏  ›  技术社区  ›  Jeg Bagus

学位的正则表达式有效性

  •  1
  • Jeg Bagus  · 技术社区  · 14 年前

    我有一个任务,我应该检查字符串的有效性,其中:

    • N90->北和必须具有0-90之间的关键度数
    • W180->度数在91-180之间
    • E360->在271-360度之间

    我怎样才能创建一个这样的注册前。

    2 回复  |  直到 14 年前
        1
  •  2
  •   David Z    14 年前

    不要使用正则表达式。这是正则表达式不适合处理的典型问题。只需将字符串拆分为一个方向(第一个字符)和一个数字,并检查数字是否满足方向所需的条件。

        2
  •  2
  •   Community Teyam    7 年前

    Regex并不真正理解数字范围,必须将这些数字作为数字序列进行匹配,因此它不是该工作的最佳工具。也就是说,这个

    N90 -&燃气轮机;北和必须具有0-90之间的关键度数

    N([0-9]|[1-8][0-9]|90)

    W180 -&燃气轮机;度数在91-180之间

    W(9[1-9]|1[0-7][0-9]|180)

    S270

    S(18[1-9]|19[0-9]|2[0-6][0-9]|270)

    E360 -&燃气轮机;在271-360度之间

    E(27[1-9]|2[8-9][0-9]|3[0-5][0-9]|360)

    工具书类