https://www.aliyun.com/jiaocheng/6997.html?spm=5176.100033.1.27.YkIz1y
正则表达式是用来简洁表达一组字符串的表达式
使用正则表达式的优势是什么?
简洁
一行胜千言 一行就是特征(模式)
无穷字符串组的简洁表达
image.png
某种特征字符串组的简洁表达
image.png
正则表达式是用来简洁表达一组字符串的表达式
正则表达式是一种通用的字符串表达框架
正则表达式是一种针对字符串表达“简洁” 和“特征” 思想的工具
正则表达式可以用来判断某字符串的特征归属
正则表达式在文本处理中十分常用:
表达文本类型的特征(病毒、入侵等)
同时查找或替换一组字符串
匹配字符串的全部或部分
……
最主要应用在字符串匹配中
编译:将符合正则表达式语法的字符串转换成正则表达式特征
image.png
正则表达式语法
正则表达式语法由字符和操作符构成
image.png
image.png
正则表达式实例
image.png
image.png
image.png
Re
Re库是Python的标准库,主要用于字符串匹配
调用方式:
import re
raw string类型(原生字符串类型)
re库采用raw string类型表示正则表达式,表示为:
image.png
raw string是不包含对转义符再次转义的字符串
re库也可以采用string类型表示正则表达式,但更繁琐
例如:
image.png
建议:当正则表达式包含转义符时,使用raw string
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
Match对象
Match对象是一次匹配的结果,包含匹配的很多信息
image.png
image.png
image.png
贪婪匹配和最小匹配
image.png
image.png
image.png
只要长度输出可能不同的,都可以通过在操作符后增加?变成最小匹配