java - 从字符串中获取 Double 值

标签 java string double

我得到了一个字符串“下午 2:25 高于 10385.29”。

我想从此字符串中获取 Double 值。

我尝试使用模式和匹配器,例如:

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 。点之后总是两个数字,但之前可以是两个、五个或更多。

最佳答案

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

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

关于java - 从字符串中获取 Double 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40022791/

相关文章:

Java 舍入误差

java - 如何提高java精度

java - 如何在 JSP 中显示数据库中的图像?

jQuery 在没有 RegEx 的情况下从 HTML 字符串中删除标签

regex - Powershell中的路径和字符串斩波

javascript - 如何使用JavaScript将字符串转换为数值(应该是可逆的)?

基于 Java Hashtable 的聊天应用程序

java - 如何逐步执行所有线程

java - GWT 2.5.1 和 IntelliJ Debug模式,可序列化异常

arrays - 在 MATLAB 中将包含星号的字符数组转换为数字