【问题标题】:Javascript regex positive less than 10000 than can be decimalJavascript 正则表达式小于 10000 可以是十进制
【发布时间】:2017-06-22 06:37:31
【问题描述】:

我需要一个正则表达式来表示一个数字,该数字可以是十进制且小于 10000,小数点后最多为 2 位。 我试过了

/^([0-9]{1,4})+(\.[0-9]{0,2})$/

但例如 44555.54 返回 true。

【问题讨论】:

  • ^[0-9]{1,4}(\.[0-9]{0,2})?$^\d{1,4}(\.\d{0,2})?$
  • 我的想法:^[0-9]{1,4}\.?[0-9]{0,2}$ (regex101.com/r/Ml1VY0/1)
  • @EganWolf : 6 位数字是正确的
  • 1000 在标题中和10000 在问题中
  • @PranavCBalan 你是对的。

标签: javascript regex numbers decimal


【解决方案1】:

在您的正则表达式中,您使用的是+,它用于一次或多次重复,并导致匹配任何长度的数字并使小数部分不贪婪(使用?)使其成为可选。

^[0-9]{1,4}(\.[0-9]{0,2})?$ 

或将\d 用于数字字符类。

^\d{1,4}(\.\d{0,2})?$

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    相关资源
    最近更新 更多