java 正则表达式匹配指定位置字符串并取出
java 正则表达式匹配指定位置字符串并取出
@Test public void test01(){ String str1="应收:12;实收:100;找零:88"; String pattern2 = "找零:(\\d+)(.*)"; // String pattern2 = "\\S+:(\\d+)(.*);"; // String pattern2 = "\\S+:(\\d+)(.*)"; // 创建 Pattern 对象 Pattern r2 = Pattern.compile(pattern2); // 现在创建 matcher 对象 Matcher m2 = r2.matcher(str1); if(m2.find()) { System.out.println("m.group(0) = " + m2.group(0)); System.out.println("m.group(1) = " + m2.group(1)); } else { System.out.println("NO MATCH1"); } }
输出:
m.group(0) = 找零:88
m.group(1) = 88
找到group(1) 可以使用了
二、匹配指定字符串
@Test private void matchText(){ String foodRemark = "口味:免辣,微辣,测试的口味;做法:次加糖,啊加双蛋,博香菜,虾皮; 这是其它备注,最后位置"; String handleFoodRemark=getTextFromFoodRemark(foodRemark,"\\做法:(.*?)\\;"); System.out.println("handleFoodRemark = " + handleFoodRemark); }
public static String getTextFromFoodRemark(String foodRemark, String regex) { Pattern pattern = Pattern.compile(regex);// 匹配的模式 Matcher m = pattern.matcher(foodRemark); if (m.find()) { return m.group(1);//取第一族匹配的字符串 } return ""; }
输出结果:次加糖,啊加双蛋,博香菜,虾皮
分类:
Java
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?