Regular Expression for decimal numbers

2019-07-21 08:39发布

I need a validation RegEx for decimal. It should allow up to 5 digits after decimal. Allow:

1    
1.0    
12.0    
12.01    
123.01    
1,123.01    
1,123.013
21,123.01234    
3,21,123.01234

How Can I do regex for this?

4条回答
我欲成王,谁敢阻挡
2楼-- · 2019-07-21 08:58

Do you want to validate the positions of the commas? If so, this works for the Indian numbering system that you seem to be using:

^(?:\d{1,2},(?:\d{2},)*\d{3}|\d{1,3})(\.\d{1,5})?$

If you want to permit commas in the integer portion but don't care about their positions (except that it can't start or end with a comma), this will do:

^\d+(?:,\d+)*(\.\d{1,5})?$
查看更多
看我几分像从前
4楼-- · 2019-07-21 09:09

There an excellent library of commonly used regular expressions at http://regexlib.com/.

You an use a standard expression like: ^\$[0-9]+(\.[0-9][0-9])?$ or one of the alternative versions that do much the same thing, depending on the exact flavor you want to match.

查看更多
可以哭但决不认输i
5楼-- · 2019-07-21 09:12
^[\d,]+(\.\d{1,5})?$
查看更多
登录 后发表回答