文章目录
正则表达式
- 正则表达式
- 为什么要学习正则表达式
- 正则表达式介绍
- 正则初体验(先感受一波)
- 正则表达式底层原理
- 正则表达式语法
- 元字符 --- 单字符匹配符 (只能匹配一个字符)
- 元字符 --- 选择匹配符
- 元字符 --- 限定符 (量词)
- 贪婪、勉强、独占
- 元字符 --- 定位符(边界匹配符)
- 分组组合
- 捕获分组
- 非捕获分组
- 非贪婪匹配
- 正则表达式练习
- 正则表达式常用类 (Pattern、Matcher)
- 分组反向引用
- String类中使用正则表达式
- 基础正则表达式速查表
MJ: Java正则表达式
为什么要学习正则表达式-
提取文章中所有的 英文单词 / 数字 / 或者单词数字 如果按照我们对字符串的操作满足上面的要求, 工作量会很大; 这时我们就需要使用
正则表达式
-
当我们对字符串或文本进行过滤/提取, 就需要使用正则表达式;
正则表达式是处理文本的利器
-
为了解决上面的问题, Java提供了正则表达式技术, 专门用于处理类似的问题; 简单的说:
正则表达式是对字符串执行模式匹配的技术
-
正则表达式 — regular expression — RegExp
正则表达式是对字符串执行模式匹配的技术
一个正则表达式, 就是用某种模式去匹配字符串的一个公式
; 一旦掌握正则表达式, 之前花费几小时而且容易出错的文本处理工作缩短在几分钟内完成。
public class Regexp01 {
@Test
public void test01() {
// 正则表达式, 模式匹配, 根据提供的文本内容, 一个字符一个字符进行模式匹配
String content = "1998年12月8日,第二代Java平台的企业版J2EE发布。";
//1. 先创建一个Pattern对象, 模式对象 --> 正则表达式对象
// ----提取文章中所有的英文单词----
// Pattern pattern = Pattern.compile("[a-zA-Z]+");
// ----提取文章中所有的数字----
// Pattern pattern = Pattern.compile("[0-9]+");
// ----提取文章中所有的英文单词和数字----
Pattern pattern = Pattern.compile("([0-9]+)|([a-zA-Z]+)");
//2. 创建匹配器对象;
Matcher matcher = pattern.matcher(content);
//3. 开始循环匹配. 找到就返回true, 否则返回false
while (matcher.find()) {
// 匹配内容,文本,放到m.group(0)中
System.out.println("找到:" + matcher.group(0));
}
}
找到:1998
找到:12
找到:8
找到:Java
找到:J
找到:2
找到:EE
@Test
public void test02() {
String content = "\n" +
" 国家卫健委:疫苗接种遵循自愿原则\n" +
" ";
//1. 先创建一个Pattern对象, 模式对象 --> 正则表达式对象
Pattern pattern = Pattern.compile("
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?