我有这个 javascript 正则表达式(小数点后 3 位,带有一个点)
^\d+(\.\d{1,3})?$
我还想匹配一个空字符串 ""
我相信它是
^$
如何将这些组合成 1 个正则表达式
这些应该是通过测试
"" //empty string
1
1.
1.0
1.00
1.000
123456789
0
.0
.00
.000
我希望我已经涵盖了所有这些内容。
最佳答案
不包括空格,您当前的表达式似乎不符合您的要求。
^\d*\.?\d{0,3}$
可选的前导数字、可选的点、末尾之前最多三位数字。
编辑: @Guffa 注意到我原来的解决方案也只会匹配一个点“。”
^\d*((\d\.)|(\.\d))?\d{0,3}$
此版本将 \.?
检查替换为检查数字后跟一个点,或检查一个点后跟一个数字,或两者都不检查。
关于javascript - 十进制正则表达式和空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19671029/