正则表达式捕获0或0.0或0.00

时间:2018-03-14 08:28:57

标签: javascript regex

我有一个棘手的问题:我使用(^[1-9]\d*|\d+\.\d*[1-9])$,我想找零或0或0.0或0.00或0000,但正则表达式对我说60.或60.00或62.0等无效(等于零)。我做错了什么?

These examples for valid or not valid sum

谢谢!

2 个答案:

答案 0 :(得分:1)

您是否可以尝试以下正则表达式,它确实尊重您的标准(有效,无效)

^(?:0?[1-9]\d*(?:\.\d*[0-9]*)?)|(:?^0.[1-9]+0)$

https://regex101.com/r/dqqkqy/6

更改要求后接受0.1, 0.2, 0.3

^(?:0?[1-9]\d*(?:\.\d*[0-9]*)?)|(:?^0.[1-9]+0?)$

https://regex101.com/r/dqqkqy/8

答案 1 :(得分:-1)

你可以试试这个正则表达式:

^0\.?0*$

或者只是将字符串转换为数字,然后检查代码。