我用 JsonNode 得到以下 JsonNode
results = parentNode.get(GEOMETRY);
产生结果:"marks (79.89 90.78)"
问题是,我在结果中得到了整个字符串“marks (79.89 90.78)”。但我需要分别获取 () 大括号内的双打。
关于如何从这个字符串中获取双数的任何想法?
我可以使用正则表达式从字符串(结果字符串)中获取数字,但我想知道是否有其他解决方法可以做到这一点。
如果结构始终相同,您可以执行以下操作来解析双打:
String fromJson = "marks (79.89 90.78)";
String[] split = fromJson.split(" ");
double a = Double.parseDouble(split[1].substring(1));
double b = Double.parseDouble(split[2].substring(0,split[2].length()-1));
System.out.println(a); // 79.89
System.out.println(b); // 90.78
您可以使用正则表达式。它给出了与给定模式匹配的所有值。您可以根据需要更改模式。
String s = "marks (79.89 90.78)";
Pattern p = Pattern.compile("\\d+\\.\\d+");
Matcher m = p.matcher(s);
while(m.find()) {
double d = Double.parseDouble(m.group());
}