首页 > 编程知识 正文

other系列词的用法(正则系列4: re.sub用法)

时间:2023-05-06 13:57:40 阅读:122217 作者:4147

re.sub替换匹配字符串后,返回替换后的字符串

这种方法主要使用三个参数。 第一个参数是匹配模式正则表达式,它是要替换的原始字符串的一部分。 第二个参数是要替换的字符串。 第三个参数是原始字符串。re.sub(pattern, repl, string, count=0, flags=0)

匹配演练

实战效果最好,直接练习

练习1 :

请求:用空格字符替换1234567等同于删除字符串中的1234567。 importrec ontent=' extrastingshello 1234567 world _ thisisaregexdemoextrastings ' content=re.sub ((d ',',',内容)

extrastingshelloworld _ thisisaregexdemoextrastings

练习2 :

要求:用替换项替换1234567

importrec ontent=' extrastingshello 1234567 world _ thisisaregexdemoextrastings ' content=re.sub ((d ',',' Replacement )

extrastingshelloreplacementworld _ thisisaregexdemoextrastings

练习3 :

要求:用1234567 8910取代1234567。 (替换原始字符串本身或用包替换原始字符串时)

import re#1.在匹配的正则表达式中加上括号#2.1意味着您将获得匹配的内容。 就是把(d )的内容弄到手,和8910组合成新的内容#3。 但是反斜杠会逃脱。 需要本地字符。 前面加r。 content=' extrastingshello 1234567 world _ thisisaregexdemoextrastings ' content=re.sub ',r'1 8910 ',

extrastingshello 12345678910 world _ thisisaregexdemoextrastings

练习4 :

导入ehtml=' ' divid=' songs-list ' H2 class=' title '经典老歌/h2 p class='introduction '经典老歌列表/pulid=2.MP3'singer='任贤齐'沧海一声笑/a/Lili data-view='4' class=' active ' a href=' Lili data-view='6' a href='/因为在上一篇文章中,我们在re.findall中匹配了所有歌曲名称。 当时直接用re.findall写有点复杂,这次先用re.sub简化,再练习re.findall

构思:用re.sub替换标签,我们只取所有曲名,不需要标签

HTML=re.sub(a.*? |/a ',',html (打印) html ) results=re.findall(Li.*? () )? /li ',html, re.S ) print(results ) forresultinresults 3360 print (result.strip ) )结果: divid=' songs-list ' H2 class=' title prip 有/Li Li数据- view='7'沧海一声笑/Li Li data-view='4' Li Li data-view='5'记事本/li li data-view='5' n往事随风n ','辉煌n ']路上,愿你沧海一声,往事随风有灿烂岁月的记事本,愿人长久以来一致的内容有换行符。 那是因为li标签中,某个内容有换行代码。 也有没有的内容. 一切由我们来取内容,用strip ()就可以了。 re.sub方法在这里介绍。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。