精度为2的小数的正则表达式是什么?

有效的例子:

123.12
2
56754
92929292929292.12
0.21
3.1

无效的例子:

12.1232
2.23332
e666.76

小数点可以是可选的,也可以包括整数。


当前回答

Chrome 56不接受这种模式(Chrome 56接受11.11。一个附加的。)与类型数字,使用类型作为文本作为进度。

其他回答

我在我的项目中尝试了一个。 这也允许带有+ | -符号的数字。

/^(\+|-)?[0-9]{0,}((\.){1}[0-9]{1,}){0,1}$/
preg_match("/^-?\d+[\.]?\d\d$/", $sum)

这招对我很管用:

(-?[0-9]+(\.[0-9]+)?)

第一组是浮点数,第二组是分数。

对于没有千位分隔符的数字,我喜欢这个简单、紧凑的正则表达式:

\d+(\.\d{2})?|\.\d{2}

或者,不限制在2的精度:

\d+(\.\d*)?|\.\d+

后者是匹配的 1 One hundred. One hundred. 100.74 100.7 0.7 7 开市

并且它不匹配空字符串(像\d*.?\ d *会)

你不需要考虑e666.76中的e吗?

With

(e|0-9)\d*\d.\d{1,2)