从字符串里面匹配截取指定内容
来源:互联网 发布:ug编程 编辑:程序博客网 时间:2024/06/06 07:39
一、从字符串里面匹配截取指定内容
需求是这样的:从字符串"49.08(总行:28.0分行:60.0)"里面匹配提取出三个分值49.08、28.0、60.0
这里总结了三种方法:
public class TestRegex {// 方法一public String[] test1(String str){String[] split = str.replaceAll("([^0-9.])+", ",").split("\\,");return split;}// 方法二public ArrayList<String> test2(String str){ArrayList<String> numarray = new ArrayList<>();String num = "";if(str != null && !"".equals(str)){for(int i=0;i<str.length();i++){if(str.charAt(i)>=48 && str.charAt(i)<=57||str.charAt(i)==46){num += str.charAt(i);}else{if(!num.isEmpty())numarray.add(num);num = "";}}}return numarray;}// 方法三public List<String> test3(String str){ String pattern = "(\\d+\\.\\d+)(\\D*)(\\d+\\.\\d+)(\\D*)(\\d+\\.\\d+)"; // 创建 Pattern 对象 Pattern r = Pattern.compile(pattern); List<String> list = new ArrayList<>(); // 现在创建 matcher 对象 Matcher m = r.matcher(str); if (m.find( )) { list.add(m.group(1)); list.add(m.group(3)); list.add(m.group(5)); } else { System.out.println("NO MATCH"); } return list;}@Testpublic void GG(){String str = "49.08(总行:28.0分行:60.0)";String [] split = test1(str);ArrayList<String> numarray = test2(str);List<String> list = test3(str);}
阅读全文
0 0
- 从字符串里面匹配截取指定内容
- Python里面截取指定的字符串
- JavaScript截取字符串指定区域的内容
- 正则表达式截取指定字符串内容
- javascript 从右边截取指定字符串
- JAVA从字符串中截取部分匹配的字符串
- 从字符串中截取掉指定的子字符串.
- Lua 字符串操作,截取指定字符串前后内容,lua 取指定字符左侧,或右侧内容
- 截取字符串指定指定字节数的内容,汉字不能截取部分
- Qt上截取中英文混合字符串的指定长度内容
- Java利用正则表达式截取指定字符串之间的内容
- NSString从字符串开头截取到指定字符的位置
- nsstring 从字符串开头截取到指定字符的位置 nsstring字符串的截取
- 截取指定长度字符串
- 指定字符串的截取
- 截取指定字符串
- Android截取指定字符串
- C#正则表达式:匹配字符串指定字符内容
- Object Detection -- 论文SSD(SSD: Single Shot MultiBox Detector)解读
- JDBC
- Kotiln控制流
- UVALive
- 16. 3Sum Closest
- 从字符串里面匹配截取指定内容
- MySQL用户管理笔记
- 来自西弗吉利亚大学li xin整理的CV代码合集(转)
- 学习笔记5
- WRF 报错/修改 记录?????
- 科学论文类型分类(letter, perspective, focus, article)以及影响引子,SCI、EI等
- 分类器模型评价指标之ROC曲线
- java 中同步方法和同步代码块的区别详解
- 语法及概念