带有两位小数的整数或浮点数的正则表达式

Kri*_*Dey 5 regex

我想用正则表达式验证我的货币字段.我想允许以下模式条目

1.23
1
.45
0.56
56.00
Run Code Online (Sandbox Code Playgroud)

不应该允许使用逗号.我试过\d+(\.\d\d)但它只允许第一,第四和第五项.\d+(?:\.\d\d+)?允许除第三个之外的所有人

Exp*_*lls 8

使用\d*而不是\d+在十进制之前匹配零个或多个数字.还要添加锚点(^$),否则只要有可用的匹配就会传递.这也会验证一个空字符串,因此如果需要,您可以使用前瞻来确保至少有一个数字:

^(?=.*\d)\d*(?:\.\d\d)?$
Run Code Online (Sandbox Code Playgroud)