Javascript正则表达式在小数点后涉及零

时间:2014-08-28 22:23:25

标签: javascript regex decimal-point

用于确定小数点后的数字是否仅为零且小数点后的零数是否大于2的javascript正则表达式是什么?

一些测试用例:

8 -> false
8.0 -> false
8.00 -> false
8.000 -> true
8.0000 -> true
8.00001 -> false

3 个答案:

答案 0 :(得分:3)

根据您的评论,如果0.000是合法的,并且您希望在小数点大于2后拒绝多个前导零并且只有零,则以下内容对您有用。

/^(?!00)\d+\.0{3,}$/

<强>解释

^         # the beginning of the string
(?!       # look ahead to see if there is not:
  00      #   '00'
)         # end of look-ahead
 \d+      #   digits (0-9) (1 or more times)
 \.       #   '.'
 0{3,}    #   '0' (at least 3 times)
$         # before an optional \n, and the end of the string

Live Demo

答案 1 :(得分:0)

这是在字符串末尾匹配.然后3个或更多0的正则表达式。

/\.0{3,}$/

答案 2 :(得分:0)

试试这个:

var pattern = /^\d+\.0{3,}$/; // Regex from @hwnd

function checkDigits(digits) {

    var result = pattern.test(digits);

    return result;
}

alert(checkDigits("5.000")); //Returns true.