测试数字是否符合xxx.xx模式

时间:2014-05-13 12:36:20

标签: javascript regex

我正在尝试为字段编写验证,而正则表达式似乎是正确的解决方案。但我似乎无法正确使用语法。以下是基本规则

  1. 必须是正面的
  2. 小数点前最多3位数
  3. 小数点后最多2位数
  4. 只有在跟随数字后才会出现小数
  5. 无需在小数点前加上前导号码
  6. 这就是我想出来的但它似乎没有起作用,但我承认正则表达式不是我的强项。

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

3 个答案:

答案 0 :(得分:3)

您的?展示位置错误。 {a,b}?将匹配ab之间可能的最少量。你可能想要:

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

答案 1 :(得分:0)

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

这个应该做你想要的。

http://regex101.com/r/aX7aU7

答案 2 :(得分:0)

使用此正则表达式:

^(\d{0,3}|\d{0,3}\.\d{1,2})$

这将根据您的要求运作