我正在修改正则表达式验证器控件。 目前的正则表达式如下:
(\d*\,?\d{2}?){1}$
据我所知,它允许带有2位小数的数字。
我需要像这样修改它:
,
)是小数点分隔符。答案 0 :(得分:2)
试试这个正则表达式:
^(((0|[1-9]\d{0,5})(\,\d{2})?)|(1000000(\,00)?))$
它接受以下数字:"4", "4,23", "123456", "1000000", "1000000,00"
,
但不接受:",23", "4,7", "1000001", "4,234", "1000000,55"
。
如果您只想接受正好两位小数的数字,请使用此正则表达式:
^(((0|[1-9]\d{0,5})\,\d{2})|(1000000\,00))$
答案 1 :(得分:0)
这个怎么样
^(?:\d{1,6}(?:\,\d{2})?|1000000)$
它接受1到6位数字和2位数的可选分数OR“1000000”。
它允许数字以零开头! (001将被接受)
^
将正则表达式锚定到字符串的开头
$
将正则表达式锚定到字符串的末尾
(?:)
是非捕获组
答案 2 :(得分:0)
^(([0-9]|([1-9][0-9]{1,5}))(\.[0-9]{1,2})?)|1000000$