我需要一个验证RegEx的十进制数。小数点后最多允许5位数。允许:
1
1.0
12.0
12.01
123.01
1,123.01
1,123.013
21,123.01234
3,21,123.01234
我怎么能为此做正则表达式?
答案 0 :(得分:3)
答案 1 :(得分:2)
^[\d,]+(\.\d{1,5})?$
答案 2 :(得分:2)
您想验证逗号的位置吗?如果是这样,这适用于您似乎正在使用的印度编号系统:
^(?:\d{1,2},(?:\d{2},)*\d{3}|\d{1,3})(\.\d{1,5})?$
如果你想在整数部分允许逗号但不关心它们的位置(除了它不能用逗号开头或结尾),这样做:
^\d+(?:,\d+)*(\.\d{1,5})?$
答案 3 :(得分:0)
在http://regexlib.com/有一个很棒的常用正则表达式库。
您可以使用标准表达式:^\$[0-9]+(\.[0-9][0-9])?$
或其中一个替代版本执行相同的操作,具体取决于您要匹配的确切风格。