我正在试图找到一个正则表达式,该表达式适用于小数点前两位数和小数点后两位数的最大小数。小数点和小数位是可选的。因此,这些值将被接受:在小数点前最多2位数的小数的正则表达式
90
5.4
45.21
0.5
0
而且将被拒绝:
100
105.56
05.6
55.543
78.
任何正则表达式大师能帮忙吗?
我正在试图找到一个正则表达式,该表达式适用于小数点前两位数和小数点后两位数的最大小数。小数点和小数位是可选的。因此,这些值将被接受:在小数点前最多2位数的小数的正则表达式
90
5.4
45.21
0.5
0
而且将被拒绝:
100
105.56
05.6
55.543
78.
任何正则表达式大师能帮忙吗?
这应该工作:
^[1-9]\d?(?:\.\d{1,2})?$
如果你想接受甚至0.5
,试试这个:
^(?:[1-9]\d?|0)(?:\.\d{1,2})?$
差不多,但我也需要它接受例如0.5和0 – user517406
@ user517406:我已更新了我的答案。 – user278064
非常好,像魅力一样工作。出于兴趣,我将如何修改它只接受小数点前的1位而不是2?我会删除第一个(?:)吗? – user517406
我希望这会为你工作
\d{0,2}(\.\d{1,2})?
/\A[1-9]?\d(?:\.\d{1,2})?\z/
..................
你尝试过什么吗? – Stefan
为什么'05.6'和'78.'会被拒绝? –