肉松饼罗曼史 2021-02-04 12:14 采纳率: 42.9%
浏览 78
已采纳

java语言有什么方法可以更方便截取10022这个数字?

问题:有一串字符是Heap....10022.....,java语言有什么方法可以更方便截取10022这个数字?

我做的方法如下,可以截取到,但是这个方法不太好用,如果当数值是4位数时,截取的数值前面就会多一个小数点,比如(.8921)”这种。所以请教一下大家,有什么方法截取这个数值更精准点

 

  • 写回答

7条回答 默认 最新

  • 小小鱼儿小小林 全栈领域优质创作者 2021-02-04 19:11
    关注

    正则表达式取数字就可以了

    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    /**
     * Created by yjl on 2021/2/4.
     */
    public class Testaa {
        public static void main(String[] args) {
            String regContent = getRegContent("(\\d)+", "Heap....10022.....", 0);
            System.out.println(regContent);
        }
    
        public static String getRegContent(String reg, String content, int index){
            Pattern pattern = Pattern.compile(reg); 	// 讲编译的正则表达式对象赋给pattern
            Matcher matcher = pattern.matcher(content);
            String group="";
            while (matcher.find()){
                group= matcher.group(index);
                //System.out.println(group);
            }
            return group;
        }
    
    }
    

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵