我們在使用re模塊的時(shí)候,需要根據(jù)不同的使用需求選擇不同的功能進(jìn)行匹配。考慮到大家都是python新手,在方法的學(xué)習(xí)上,小編推薦常用的方法作為主要的學(xué)習(xí)目標(biāo)。本文帶來了兩個(gè)函數(shù),re.sub 和 re.compile。以下兩部分分別說明。python re模塊常見使用方法具體內(nèi)容如下。
1、re.sub
re.sub 用于替換字符串中的匹配項(xiàng)。以下示例將字符串中的空格 ' ' 替換為 '-' :
import re text = "JGood 是個(gè)帥哥,他很酷,很聰明,等等..." print re.sub(r'/s+', '-', text)
re.sub的函數(shù)原型為:re.sub(pattern, repl, string, count)
其中第二個(gè)函數(shù)是被替換的字符串;在這種情況下'-'
第四個(gè)參數(shù)是指替換的次數(shù)。默認(rèn)為 0,表示每個(gè)匹配項(xiàng)都會(huì)被替換。
re.sub 還允許使用函數(shù)復(fù)雜地處理替換匹配項(xiàng)。如:re.sub(r'/s', lambda m: '[' + m.group(0) + ']', text, 0); 替換字符串中的空格' '是'[]'。
2、重新編譯
正則表達(dá)式可以編譯成正則表達(dá)式對象。那些經(jīng)常使用的正則表達(dá)式可以編譯成正則表達(dá)式對象,可以提高一定的效率。下面是一個(gè)正則表達(dá)式對象的例子:
import re text = "JGood 是個(gè)帥哥,他很酷,很聰明,等等..." regex = re.compile(r'/w*oo/w*') print regex.findall(text ) #查找所有包含'oo'的單詞 print regex.sub(lambda m: '[' + m.group(0) + ']', text) #使用字符串中包含'oo'的單詞[]括號(hào)內(nèi)。
以上是python re模塊常見使用方法。當(dāng)然,re模塊有很多方法。由于本文篇幅有限,這部分的使用將在后續(xù)文章中不斷更新。更多關(guān)于Python培訓(xùn)的問題,歡迎咨詢千鋒教育在線名師,如果想要了解我們的師資、課程、項(xiàng)目實(shí)操的話可以點(diǎn)擊咨詢課程顧問,獲取試聽資格來試聽我們的課程,在線零距離接觸千鋒教育大咖名師,讓你輕松從入門到精通。