2

我是正则表达式的新手,需要编写一个正则表达式来匹配金额值中的“100”和“100.00”。最后两位数字仅在它们后面是“。”时才匹配。

我试过: ^\d+?(?=([.]{1})\d{2})$ - 没有任何运气

非常感谢帮助

4

3 回答 3

3

您不需要在这里进行前瞻。您可以使用可选的非捕获组

^\d+(?:\.\d{2})?$
于 2013-09-17T10:56:17.800 回答
0

与以前的答案不同

^\d{1,8}([\.,]\d{1,2})?$

我发现,当用户表示 1.50 时,他们仍然会将货币值输入为 1.5,因此我们也使用正则表达式来允许。小数位数可以调整,小数点前的位数也可以调整

于 2013-09-17T12:41:00.057 回答
0

使用这个正则表达式:/^\d+(?:\.\d{2})?$/

于 2013-09-17T10:57:53.543 回答