作者:心平 | 来源:互联网 | 2023-09-25 13:44
假设
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.我应该使用什么模式来获得理想的结果,或者使用匹配器和模式的其他解决方案是什么.
解决方法:
你的正则表达式只查找数字(加号只表示至少一个).如果需要小数,则需要将点包含在正确的位置
(\\d+\\.\\d+)
这将给你至少一个数字,后跟一个点,然后至少一个数字.