我想用正则表达式匹配浮点十进制数。在小数点之前可能有或没有数字,并且小数可能存在也可能不存在,如果存在,它可能在数字后面也可能没有数字。 (对于此应用程序,不允许使用前导+/-或尾随“E123”)。我写了这个正则表达式:如何检查正则表达式中两个子表达式中至少有一个是否匹配?
/^([\d]*)(\.([\d]*))?$/
哪个正确匹配下面:
1
1.
1.23
.23
然而,这也匹配空字符串,或只是一个小数点的字符串,我不想。
目前我在运行正则表达式后检查$ 1或$ 3的长度大于0.如果不是,它是无效的。有没有一种方法可以直接在正则表达式中执行此操作?
它在Java中,但我在这里发布它,就好像它是Perl,因为Java的正则表达式引擎是对人类尊严的侮辱。 – Kip 2008-10-06 14:02:28