1. 程式人生 > >re模塊 正則表達式

re模塊 正則表達式

返回 str sub 直觀 開始 re.sub 編程語言 () search方法

1、表示字符

技術分享圖片

2、原始字符串

Python中字符串前面加上 r 表示原生字符串

與大多數編程語言相同,正則表達式裏使用"\"作為轉義字符,這就可能造成反斜杠困擾。假如你需要匹配文本中的字符"\",那麽使用編程語言表示的正則表達式裏將需要4個反斜杠"\\":前兩個和後兩個分別用於在編程語言裏轉義成反斜杠,轉換成兩個反斜杠後再在正則表達式裏轉義成一個反斜杠。

Python裏的原生字符串很好地解決了這個問題,有了原始字符串,你再也不用擔心是不是漏寫了反斜杠,寫出來的表達式也更直觀。

3、表示數量

技術分享圖片

4、表示邊界

技術分享圖片

5、匹配分組

技術分享圖片

6、

re.match函數

re.match 嘗試從字符串的起始位置匹配一個模式,如果不是起始位置匹配成功的話,match()就返回none。

技術分享圖片

7、

re.search方法

re.search 掃描整個字符串並返回第一個成功的匹配。

函數語法:

re.search(pattern, string, flags=0)
技術分享圖片

re.match與re.search的區別

re.match只匹配字符串的開始,如果字符串開始不符合正則表達式,則匹配失敗,函數返回None;而re.search匹配整個字符串,直到找到一個匹配。



8、

檢索和替換

Python 的re模塊提供了re.sub用於替換字符串中的匹配項。

語法:

技術分享圖片


9、

compile 函數

compile 函數用於編譯正則表達式,生成一個正則表達式( Pattern )對象,供 match() 和 search() 這兩個函數使用。

語法格式為:

技術分享圖片

10、

findall

在字符串中找到正則表達式所匹配的所有子串,並返回一個列表,如果沒有找到匹配的,則返回空列表。

註意: match 和 search 是匹配一次 findall 匹配所有。

語法格式為:

findall(string[, pos[, endpos]])
技術分享圖片

11、

re.split

split 方法按照能夠匹配的子串將字符串分割後返回列表,它的使用形式如下:

技術分享圖片

re模塊 正則表達式