【问题标题】:Regex which allows 3 digit before precision and 2 digits after precision正则表达式允许精度前 3 位和精度后 2 位
【发布时间】:2012-10-24 10:27:40
【问题描述】:

我写了一个正则表达式,它只需要整数,但我需要重写这个正则表达式,只允许精度前 3 位和精度后 2 位

怎么做?

【问题讨论】:

    标签: javascript asp.net .net regex scripting


    【解决方案1】:

    如果它必须始终包含 3 位数字、一个小数点和 2 位数字,例如,412.88,那么:

    /^\d{3}\.\d{2}$/
    

    如果它可以是 最多 3 位之前和 最多 2 之后(可能根本没有小数点),那么可能是这样的:

    /^\d{1,3}(\.\d{1,2})?$/
    

    【讨论】:

      【解决方案2】:

      c#

      @"^\d{3}\.\d{2}$"

      //in c# we need to use verbatim string `@""` to treat escape sequences as normal literals instead of giving it a special meaning..
      

      javascript

      /^\d{3}\.\d{2}$/

      【讨论】:

      • 逐字字符串不会使编译器静音。它们导致反斜杠按字面意思处理,而不是转义字符。
      • @TimPietzcker 在某种程度上是因为他们在使用它后不会抱怨。像 \d,\w 这样的无效转义序列被编译器视为error
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-08
      • 2022-07-22
      • 1970-01-01
      • 2010-09-23
      • 1970-01-01
      • 2021-10-08
      相关资源
      最近更新 更多