综合应用
001字符串切割
分隔符切割字符串
非字母形式切割
减号切割
减号切割且把减号包括在结果里面
Spile的另外一个参数,maxsplit表示拆分的最大数量
maxsplit=2表示保留两个切割结果,其余的作为一个整体
maxsplit=1表示只保留一个
002字符串替换sub
如果用模式编译方式,就是三个参数
如果不用模式编译方式,用re的话需要4个参数,repl前面多一个模式
Repl前面参数:第一个参数定义模式
Repl表示替换以后的结果内容是什么
String表示在哪个地方进行替换
Count表示在哪里替换
补充:参考sub的其他笔记,如下图
为了简单例子用了re调用,即不用模式编译方式,完整的应该是4个参数
例子1:把数字替换成减号
例子2:应用到了编组的另外一种应用:表现内
例子需求为:把*better*替换为<strong>better</strong>
方式1:没有用表现内方式,结果为把better丢失
方式2:使用了表现内方式,把原来内容保留下来把better保留下来了
其中r表示非转义
(.*?)表示任意多个字符且非贪婪模式
g<1>表示用了表现内方式,1位引用第一个分组
方式3:在方式2的基础上,把序号改为分组名称
例子3:sub可以替换时候,把内容格式进行修改
003 subn替换并返回替换数量
004 编译标记
正则操作过程中 ,有些行为时可以改变的
例子1:匹配时候忽略大小写
例子2:查找多行都找,
例子3:指定匹配所有字符
005 清理正则缓存
正则在模式编译时候,编译好的模式会缓存到内存中,如果想某个时间清空之前的缓存,可以使用purge方法
006 逃逸字符
逃逸字符,忽略以前原有的功能意义如行开始标志^、或行结尾标志$、问号等
文本里面本身含有^,如果想匹配该字符