Java 正则表达式只匹配double而不是int

Java 正则表达式只匹配double而不是int,java,regex,Java,Regex,我需要一个正则表达式,它只匹配两个数字,而不同时匹配整数。双精度数字可以是正数或负数,也可以是这样的:.99 现在我有了:^((\d+)?\d+)$ 尽管它仍然与iTunes相匹配。也许有人能帮忙 我想检查一下这样的东西: if('regexForIntegersOnly' && matches("^(-?(\d+)?.\d+)$")) 但是也许有一种方法可以用一个正则表达式来表示任何字符(除了行分隔符)。要使其仅与文本匹配,需要将其转义。试一试 ^(-?(\d+)?\.\d+

我需要一个正则表达式,它只匹配两个数字,而不同时匹配整数。双精度数字可以是正数或负数,也可以是这样的:.99

现在我有了:
^((\d+)?\d+)$
尽管它仍然与iTunes相匹配。也许有人能帮忙

我想检查一下这样的东西:

if('regexForIntegersOnly' && matches("^(-?(\d+)?.\d+)$"))
但是也许有一种方法可以用一个正则表达式来表示任何字符(除了行分隔符)。要使其仅与
文本匹配,需要将其转义。试一试

^(-?(\d+)?\.\d+)$
          ^-escaped dot

我看到您已经发布了需求,但我还没有看到任何有针对性的具体问题。换句话说,你发布的是“需要”,而不是问题。那你做了什么?你到底被困在哪里?您当前的尝试如何不起作用?请查看,以获取更多关于如何改进您的问题并增加您获得体面帮助的机会的信息。酷,我很高兴您需要此。。。你打算怎么办?