2014-01-20 121 views
1

我目前的正则表达式是:^[0-9]{1,2}([,.][0-9]{1,2})?$它允许数值高达99.我不是最大的正则表达式,并想知道有人可以帮助我调整这包括数字在数百例如100中。调整正则表达式包括0-100 - 正则表达式货币值

编辑:它的货币价值。

例如,我希望能够提取货币值,例如100:99,而不是100:100。 它不能是负面的,我的程序已经阻止输入小于1的值。

感谢

+0

为什么使用正则表达式来表示数字?为什么不使用正常比较?看来你也试图解析浮点值。但那么科学记数法呢? –

+0

什么是极限100或999? –

回答

4

您可以使用此正则表达式0..100范围内(包括两端):

^([0-9]{1,2}|100)$ 

或您所在例如:

^([0-9]{1,2}|100)([,.][0-9]{1,2})?$ 
+0

OP想要允许浮点值,看起来好像是 –

+1

是相应实现和编辑的。本来希望OP的一些例子更清晰。 – anubhava

+0

道歉,其用于货币价值。 – DevC

0

这应该这样做:^[0-9]{1,3}([,.][0-9]{1,3})?$

+0

允许值> 100,这显然不是OP所期望的。并没有理由改变小数点掩码。 – AFract

+0

OP表示“在数百,例如100”中,所以值> 100应该没问题。我同意这个说明最好是模糊的。 – mrjink

+0

@Richard:AFAIK“数百”意味着3位数字 - 我的建议可以完成这项工作。第二部分也似乎不是十进制的,因为它也有逗号。请在投票前仔细查看。 – RaviH

0
((^(100)([.][0]+)?$)|(^[0-9]{1,2}([.][0-9]+)?$)) 

此正则表达式适用于0.0000 ....至100.000000 ....