String str="hh\n1\n22\n798.809\n0.89\n";
String regex="\\d+(?:\\.\\d+)?";
Matcher m=Pattern.compile(regex, Pattern.MULTILINE).matcher(str);
List<String> result=new ArrayList<String>();
while(m.find()){
result.add(m.group());
}
结果为:[1,22,798.809,0.89]