从String中获取Double值

时间:2016-10-13 13:45:13

标签: java string double

我有一个字符串"在下午2:25高于10385.29"。

我想从此String中获取Double值。

我尝试使用Pattern和Matcher:

Pattern pattern = Pattern.compile("(\\w+?).(\\w+?)");
Matcher matcher = pattern.matcher(instrumentName);

while (matcher.find()) {
    String key = matcher.group(1);
    String value = matcher.group(2);

    System.out.println("Key : " + key + " value : " + value);
}

但它很奇怪,并没有找到双重价值。

我希望得到结果Double value = 10385.29

此值可以类似于xxx.xxxxxxx.xx。点后总是两个数字,但之前可以是两个,五个或更多。

1 个答案:

答案 0 :(得分:2)

如果字符串值存储如下“10385.29 2:25 pm”那么您可以将其拆分并使用parseDouble获取您的双倍值,如下所示:

    String ss = "10385.29 2:25pm";
    String vs[] = ss.split(" ");
    double val = Double.parseDouble(vs[0]);
    System.out.println(val);