Python学习——正则表达式
程序员文章站
2022-06-06 17:05:39
...
正则表达式
字符串匹配的模板(普通字符+特殊字符),进而提取、删除、替换匹配的字串。
字符分类
- 普通字符
大小写字母,数字,标点符号等 - 非打印字符(转义字符):
- 特殊字符:匹配特殊字符时需要通过‘\’进行转义,否则按其描述处理
- 限定字符:对子表达式匹配次数进行限定/指定
//限定
coo+l: + 号代表前面的字符o必须至少出现一次,即贪婪模式
coo*l: * 号代表字符o可以不出现,也可以出现一次或者多次(0次、或1次、或多次)
colou?r : ? 问号代表字符u最多只可以出现一次(0次、或1次),即非贪婪模式
- 定位符:设置匹配边界,限定符与定位符不能一起连用
er\b : 匹配“teacher”
\ber : 匹配“eriol”
\Ber 或 er\B: 匹配“mannerism”,\B位置不影响最终结果
- 反向引用:提供查找文本中两个相同的相邻单词的匹配项的能力
对一个正则表达式模式或部分模式两边添加圆括号将导致相关匹配存储到一个临时缓冲区中,所捕获的每个子匹配都按照在正则表达式模式中从左到右出现的顺序存储。
可以使用 \n 访问缓冲区(n 为一个标识特定缓冲区的一位或两位十进制数,缓冲区编号从 1 开始,最多可存储 99 个捕获的子表达式)
可以使用非捕获元字符 ?:、?= 或 ?! 来重写捕获,忽略对相关匹配的保存。
下一篇: php tcp udp 通信