正则表达式只匹配一个偶数十进制数字

时间:2016-02-11 02:29:08

标签: java regex

我正在建立在[约拿] [1]:Matching to one decimal place in Java using regex

的想法上
^([1-9]\d*|0)(\.\d)?$

这个正则表达式是我想要的。但我的附加要求是十进制数字必须是偶数,例如0.2,10.4,100.6,1.18。

我正在考虑将字符串拆分为'。'并检查十进制数字%2 = 0.如何在正则表达式中实现此目的?

1 个答案:

答案 0 :(得分:0)

您可以明确要求使用偶数,而不是使用/d作为十进制数字,如下所示:

^([1-9]\d*|0)(\.[24680])?$