开发技术-Java从字符串中提取小数

目录

1.前提

正则表达式全解析+常用示例

常用正则表达式合集,这一篇就够了!!

Pattern 和 Matcher

 2.实现

 


1.前提

项目上请求第三方服务,其中有个字段为字符串和小数的混合,

类似:武汉0.1333;北京10.25;其它地区110.1

需要将其中的小数取出。

技术积累:

正则表达式全解析+常用示例

常用正则表达式合集,这一篇就够了!!

Pattern 和 Matcher

 2.实现

        String str = "武汉0.1333;北京10.25;其它地区110.1";
        List list = new ArrayList<>();
        // 声明正则,匹配数字(1个或多个).数字(1个或多个)
        String regex = "\\d+\\.+\\d+";
        // Pattern的构造方法是私有的,不可以直接创建,通过静态方法compile创建Pattern对象,查看源代码发现compile直接调用了Pattern构造函数。
        Pattern pattern = Pattern.compile(regex);
        // 返回一个Matcher对象。Matcher类的构造方法也是私有的,不能随意创建,只能通过Pattern.matcher(CharSequence input)方法得到该类的实例。
        Matcher matcher = pattern.matcher(str);
        // 对目标字符串进行正则匹配,通过while可以多次执行find方法,获取多次的匹配结果,代码编写方式类似于iterator.next()。
        while (matcher.find()) {
            // group() 返回匹配到的字符串,结合find函数使用。
            String group = matcher.group();
            list.add(Double.parseDouble(group));
        }
        System.out.println(list);

 开发技术-Java从字符串中提取小数_第1张图片

你可能感兴趣的:(Java开发,小技术,java)