如何使用正则表达式使用可选百分比符号验证十进制?

时间:2012-05-12 00:33:22

标签: regex windows vb.net visual-studio decimal

作为问题的标题,我需要使用以下值验证正则表达式:  (最多2位小数,9位整数),带有可选的百分号。

有效:

10%
 0%
 1111111.12%
 15.2%
 10
 2.3

无效:

 .%
 12.%
 .02%
 %
 123456789123.123

我试过:

^[0-9]{0,9}([\.][0-9]{0,2})\d[\%]{0,1}?$

但它不能按我的意愿工作。

2 个答案:

答案 0 :(得分:1)

试试这个

^\d{1,9}(\.\d{1,2})?%?$

我测试了rubular,你的例子就可以了。

答案 1 :(得分:1)

试试这个:

^[0-9]{1,9}([\.][0-9]{1,2})?[\%]?$