当前位置: 首页 > news >正文

Java高级Day57-剩余内容补充

142.非贪婪匹配

public class TestJava {public static void main(String[] args) {String content = "hello11111 ok";//String regStr = "\\d+";//默认是贪婪匹配String regStr = "\\d+?";//非贪婪匹配
​Pattern pattern = Pattern.compile(regStr);Matcher matcher = pattern.matcher(content);
​while (matcher.find()) {System.out.println("找到 " + matcher.group(0));}}
}

143.pattern类

pattern对象是一个正则表示对象,Pattern类没有公共构造方法。要创建一个pattern对象,调用其公共静态方法,它返回一个Pattern对象。该方法接受一个正则表达式作为它的第一个参数

public class TestJava {//演示matches方法,用于整体匹配机制,验证输入的字符串是否满足条件public static void main(String[] args) {String content = "hello abc hello";String regStr = "hello";
​boolean matches = Pattern.matches(regStr,content);
​System.out.println("整体匹配=" + matches);}
}

145.Matches类

image-20241024184911689

public class TestJava {public static void main(String[] args) {String content = "hello edu jack tom hello smith hello";String regStr = "hello";
​Pattern pattern = Pattern.compile(regStr);Matcher matcher = pattern.matcher(content);while (matcher.find()) {System.out.println("==========");System.out.println(matcher.start());System.out.println(matcher.end());System.out.println("找到:" + content.substring(matcher.start(),matcher.end()));}//整体匹配方法,常用于,去校验某个字符串是否满足某个规则System.out.println("整体匹配 = " + matcher.matches());
​//完成 如果content 有 morning 替换成 nightregStr = "morning";pattern = Pattern.compile(regStr);matcher = pattern.matcher(content);//注意:返回的字符串才是替换后的字符串String night = matcher.replaceAll("night");}
}

146.结巴去重

Q:把 : ”我...我要...学学学学...编程java!“;通过正则表达式修改成”我要学Java“

public class TestJava {public static void main(String[] args) {String content = "我...我要...学学学学...编程java!";
​//1.去掉所有的.Pattern pattern = Pattern.compile("\\.");Matcher matcher = pattern.matcher(content);content = matcher.replaceAll("");
​System.out.println("content=" + content);
​//2.去掉重复的字//思路://1.使用 (.)\\1+ 去匹配pattern = Pattern.compile("(.)\\1+");matcher = pattern.matcher(content);while (matcher.find()) {System.out.println("找到=" + matcher.group(0));}//2.使用 反向引用$1 来替换匹配到的内容matcher.replaceAll("$1");System.out.println("content =" + content);//3.使用一条语句,去掉重复的字Pattern.compile("(.)\\1+").matcher(content).replaceAll("$1");System.out.println("content=" + content);}
}

http://www.mrgr.cn/news/57865.html

相关文章:

  • 奈氏定理和香农定理
  • 【CSS3】css开篇基础(3)
  • tomcat安装启动配置以及乱码问题
  • IDEA 如何导入NC65项目
  • CentOS 自启动某个应用
  • 5G RedCap工业路由器赋能电力物联网应用
  • 编译方法及工具
  • 【无标题】Django转化为exe,app
  • 论文阅读与写作入门
  • java算法OJ(5)归并排序
  • 【机器学习】K-means聚类算法应用
  • [Python学习日记-54] 软件开发目录设计规范
  • 三大秘籍 HubSpot AI让你的业务如鱼得水
  • B/S架构的诊所云his源码,云门诊系统,支持二次开发,源码合作交付
  • 获取 Excel 文件中的所有工作表名称,可以通过 OleDbConnection 获取表架构
  • 关于bp抓不到本地包
  • riscv uboot 启动流程分析 - SPL启动流程
  • Cursor零基础小白教程系列「进阶」 - Cursor AI代码生成详解(Cmd+K)
  • 喜欢的散文《在更热烈的风里相遇》李汉荣精选散文集
  • 从“Hello World”到“Success” —— 1024程序员节的感悟与成长
  • 电脑必备快捷键大全
  • 【C++】红黑树万字详解(一文彻底搞懂红黑树的底层逻辑)
  • “面试造火箭,工作拧螺丝”,程序员月薪多少?
  • 医院信息化与智能化系统(7)
  • Word中Normal.dotm样式模板文件
  • Docker 下备份恢复oracle