第二十七章 正则表达式

2024-01-02 23:32:57

在这里插入图片描述

1.正则快速入门

在这里插入图片描述
在这里插入图片描述
(1)
在这里插入图片描述
在这里插入图片描述

(2)
在这里插入图片描述
在这里插入图片描述

(3)
在这里插入图片描述
在这里插入图片描述

(4)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
加个编号
在这里插入图片描述
在这里插入图片描述
如果我们想要快速提取以下内容的IP地址
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.正则需求问题

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.正则底层实现1

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.正则底层实现2

查找到第一个字符1998的过程
在这里插入图片描述
在这里插入图片描述
查找到第二个字符1999的过程
在这里插入图片描述
在这里插入图片描述

5.正则底层实现3

在这里插入图片描述
加了一个括号之后
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.正则转义符

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注意:如果这里没有转义字符,编译是错误的
在这里插入图片描述
在这里插入图片描述
下面如果我们只写一个 . ,表示我们要找到所有字符
如果要找到 . 本身,则需要加上转义字符
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.正则字符匹配

在这里插入图片描述
在这里插入图片描述
+表示一个或多个的意思

8.字符匹配案例1

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

9.字符匹配案例2

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

11.选择匹配符(|)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

12.正则限定符

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

{n}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下面这个表示要出现一个任意的数字,出现两次
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

{n,m}

尽可能匹配多的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

+(1个或者多个)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

*(0个或者多个)

在这里插入图片描述
在这里插入图片描述

?(0个或者1个)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

13.正则定位符

在这里插入图片描述

^ 指定起始字符

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里一个都匹配不到,因为不是以数字开头的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

$ 指定结束字符

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

\\b 匹配目标字符串的边界

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

\\B 匹配目标字符串的非边界

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

14.捕获分组

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(pattern)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(? pattern)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

15.非捕获分组

在这里插入图片描述
在这里插入图片描述

(?:pattern)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(?=pattern)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

(?!pattern)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

16.非贪婪匹配

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

17.正则应用实例

在这里插入图片描述

1.汉字

在这里插入图片描述
这里的中文的范围用16进制来表示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.邮政编码

在这里插入图片描述
在这里插入图片描述

3.QQ号码

在这里插入图片描述
在这里插入图片描述

4.手机号码

在这里插入图片描述
在这里插入图片描述

18.正则验证复杂URL

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

19.Pattern类

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

20.Matcher类

在这里插入图片描述
在这里插入图片描述

start/end

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

matches

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

replaceAll

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

21.反向引用

在这里插入图片描述
在这里插入图片描述

22.反向引用案例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

23.结巴去重案例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
就是:虽然上面的正则表达式是匹配到的连续重复的字,但是捕获的是圆括号里面的内容, 所以捕获的组里面的字只有一个,因此使用replaceAll(“$1”)的意思是:用捕获到的单个字去替换匹配到的多个字
在这里插入图片描述
在这里插入图片描述

24.替换分割匹配

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

25.本章练习01

在这里插入图片描述
. 在小括号中表示匹配任意字符,所以要写成\.
这里直接用了String自带的matches方法
在这里插入图片描述
在这里插入图片描述
加一个^和$更好
在这里插入图片描述
在这里插入图片描述
前面不加也可以的原因是
在这里插入图片描述

26.本章练习02

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里有个问题,下面这种写法也是正确的
在这里插入图片描述
在这里插入图片描述
下面在做一下改进
在这里插入图片描述
在这里插入图片描述

27.本章作业03

在这里插入图片描述
/abc这部分可以有0个或者多个
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

文章来源:https://blog.csdn.net/m0_72232218/article/details/135348939
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。