1

可能重复:
浮点的正则表达式?

我正在尝试使用正则表达式。

有效字符串为:
1
11
5
12222222233
1.2
.5
1222.33444
12234.456
0

无效字符串是
.
-2
san
2s2
S2S
ssss2ssss
25535535TY

但是这个正则表达式没有资格测试多个点 (.),例如
1......5,
5..2233
1223...5
这接受这些值作为有效字符串。
请帮助我如何使用 reg 解决此问题。

注意,上面的验证应该是通过的。

4

2 回答 2

2

那个正则表达式怎么样:\d*(\.\d+)?

编辑

此正则表达式\d*(\.\d+)?也将允许空值。

更新版本:\d*(\.)?\d+没有这个问题。

请注意,将不允许负值,因为\d仅匹配数字 0..9

于 2012-12-20T15:28:40.070 回答
1

^\d*\.?\d*$应该可以解决问题,但是稍微思考和阅读更多关于正则表达式的信息也会告诉你同样的事情。

没看到那个。单独或。最后是不允许的。所以^\d*(\.\d+)?$灵魂就好了

于 2012-12-20T15:28:23.930 回答