1、什么是正則表達式?
一種規(guī)則字符串,非python特有,需導(dǎo)入re模塊,起到過濾、清洗數(shù)據(jù)的作用
2、用法詳解

正則表達式表
2.1、re.match()
最常規(guī)的匹配:

最常規(guī)匹配
常規(guī)匹配顯得很繁瑣,使用.*代替所有字符串:

泛匹配
使用括號和group(數(shù)字)可以獲取匹配的目標結(jié)果:

匹配特定目標
貪婪匹配:.*會默認匹配盡量多的字符

貪婪匹配
非貪婪匹配:使用?采用非貪婪匹配

非貪婪匹配
匹配模式:因為.無法匹配換行符

匹配模式
re.S?改變匹配模式:

使用re.S
轉(zhuǎn)義:

轉(zhuǎn)義
2.2、re.search()
re.match()是從字符串開頭開始匹配的,一旦開頭不匹配,那么整個匹配就失敗了。re.search()會掃描整個字符串,反饋第一個匹配成功的結(jié)果。

re.search()

匹配練習(xí)1

匹配練習(xí)2

匹配練習(xí)3
2.3、re.findall()
因為re.rearch()只能返回匹配的第一個結(jié)果,如果想返回所有符合匹配規(guī)則的結(jié)果,就要使用re.findall(),如果有匹配結(jié)果,返回的是一個列表。

re/findall()

打印列表及元祖

匹配練習(xí)4
2.4、re.sub()

把數(shù)字替換成空

第二個參數(shù)的作用(替換成的結(jié)果)
如果要替換成的結(jié)果里包含匹配的結(jié)果,需要用 \數(shù)字?獲取到匹配的結(jié)果

\1表示把第一個匹配結(jié)果
替換掉a標簽

替換a標簽

打印歌名列表
2.5、re.compile()
把正則字符串編譯成正則表達式對象,以便在后面的匹配中復(fù)用。

re.compile()使用
爬取豆瓣圖書

爬取豆瓣圖書實戰(zhàn)練習(xí)