一、 簡談正規表示式
元字元
. 除了換行符外任意字元。
w 數字、字母、下劃線
s 空白符
單詞的末尾
d 數字
匹配換行符
匹配製表符
W 除了數字。 字母 下劃線
D 除了數字
S 除了空白符
^ 開頭
$ 結尾
[…] 字元組
[^…] 除了字元組內的元素外
()匹配括號內的表示式,也表示一個組
量詞 限定符
* {0,n}
+ {1,n}
? {0,1}
{p} p次
{p,} p次或更多次
{p,q} 從p到q次
貪婪匹配和惰性匹配
*,+,{},都屬於貪婪——即儘可能多的匹配
在使⽤用.*後⾯面如果加了? 則是儘可能的少匹配. 表⽰惰性匹配
正則中轉義 在前加 如 \n 表示
二、 re模組
findall()獲取到匹配的所有內容 返回list 在pycharm中可能因()優先權,而得不到所要的結果,可用(?:取消優先權)
finditer()匹配到所有內容。 返回迭代器
search() 搜尋。查到了就返回 查不到返回None
match() 匹配. 從頭開始匹配 匹配不到就報錯
split()切割,可多個,在pycharm中用()包裹表示式可保留切割位置
sub()替換 同理() 可顯示替換多少次
compile() 表示式預載入
(?P<name>正則) 給表示式起名 可呼叫檢視