假设
String str="123 abc 123.4 256";
Matcher m = Pattern.compile("\\d+").matcher(scan);
while (m.find())
{
System.out.println(m.group(0));
}
通过使用这段代码,我得到的输出为:
123
123
4
256
但在输出中我希望它为 123 ,123.4
,256。我应该使用什么模式来获得理想的结果,或者除了使用 Matcher 和模式之外还有什么其他解决方案。
最佳答案
您的正则表达式仅查找数字(加号仅表示至少一个)。如果你想要小数,你需要在正确的位置包含点
(\\d+\\.\\d+)
这将为您提供至少一位数字,然后是一个点,然后是至少一位数字。
关于java - 使用匹配器和模式从字符串中提取 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25184900/