ASP.Net RegularExpressionValidator货币需要2位小数才能进行验证

时间:2015-10-21 22:14:14

标签: asp.net regex

我有一个非常标准的ASP.NET RegularExpressionValidator,我只需要ValidationExpression就可以了,所以需要2个小数位!

好例子..

234234.00
2342342.12
234.11
2.22
3.33

不好的例子

3242.1
2342
3.1
.22

我尝试了/^\d{0,4}(\.\d{0,2})?$/,我无法让它发挥作用。

4 个答案:

答案 0 :(得分:3)

您可以使用

^[0-9]+[.][0-9]{2}$

请参阅regex demo

正则表达式细分:

  • ^ - 字符串开头
  • [0-9]+ - 一位或多位
  • [.] - 文字.
  • [0-9]{2} - 正好是2位数
  • $ - 字符串结束。

您的正则表达式 - ^\d{0,4}(\.\d{0,2})?$ - 在开头匹配0到4位数,然后可选在字符串结尾之前可以有一个句点后跟0到2位数。它看起来像是一个实时验证正则表达式,但它不能用于最终验证。

答案 1 :(得分:1)

试试这个:

/\d+\.\d{2}$/

一个或多个数字,后跟一个点,后面跟着字符串末尾的另外两个数字。

https://regex101.com/r/lF9uU2/1

答案 2 :(得分:0)

请试试这个

/^[0-9]+\.?[2]*$/

答案 3 :(得分:0)

您可以将验证程序的RegEx值设置为服务器端代码中的以下逐字字符串:

@"^\d+\.\d{2}$"