正規表示式re模組
編譯正規表示式模式,返回乙個物件的模式。(可以把那些常用的正規表示式編譯成正規表示式物件,這樣可以提高一點效率。)
1、compile()
格式:re.compile(pattern,flags=0)
①.pattern: 編譯時用的表示式字串。
②.flags 編譯標誌位,用於修改正規表示式的匹配方式,如:是否區分大小寫,多行匹配等。常用的flags有:
執行如下:
2、match()
決定re是否在字串剛開始的位置匹配。//注:這個方法並不是完全匹配。當pattern結束時若string還有剩餘字元,仍然視為成功。想要完全匹配,可以在表示式末尾加上邊界匹配符』$』
格式:re.match(pattern, string, flags=0)
執行如下:
3、search()
格式:re.search(pattern, string, flags=0)
re.search函式會在字串內查詢模式匹配,只要找到第乙個匹配然後返回,如果字串沒有匹配,則返回none。
執行如下:
*注:match和search一旦匹配成功,就是乙個match object物件,而match object物件有以下方法:
group() 返回被 re匹配的字串
start() 返回匹配開始的位置
end() 返回匹配結束的位置
span() 返回乙個元組包含匹配 (開始,結束) 的位置
group() 返回re整體匹配的字串,可以一次輸入多個組號,對應組號匹配的字串。
a. group()返回re整體匹配的字串,
b. group (n,m) 返回組號為n,m所匹配的字串,如果組號不存在,則返回indexerror異常
c.groups()groups() 方法返回乙個包含正規表示式中所有小組字串的元組,從 1 到所含的小組號,通常groups()不需要引數,返回乙個元組,元組中的元就是正規表示式中定義的組。
re.findall遍歷匹配,可以獲取字串中所有匹配的字串,返回乙個列表。
格式:re.findall(pattern, string, flags=0)
執行結果:
執行結果:
5、finditer()
搜尋string,返回乙個順序訪問每乙個匹配結果(match物件)的迭代器。找到 re 匹配的所有子串,並把它們作為乙個迭代器返回。
格式:re.finditer(pattern, string, flags=0)
執行結果:
按照能夠匹配的子串將string分割後返回列表。
可以使用re.split來分割字串,如:re.split(r』\s+』, text);將字串按空格分割成乙個單詞列表。
格式:re.split(pattern, string[, maxsplit])
maxsplit用於指定最大分割次數,不指定將全部分割。
執行結果:
7、sub()
使用re替換string中每乙個匹配的子串後返回替換後的字串。
格式:re.sub(pattern, repl, string, count)
執行結果:
re 正規表示式模組
import re 預定義字符集 d 數字 0 9 d 非數字 d s 空白字元 空格 t r n f v s 非空白字元 s w 單詞字元 a za z0 9 w 非單詞字元 w 匹配數量 匹配除換行符以外的任何單個字元 匹配前乙個字元0或無限次 盡可能多的匹配 盡可能少的進行匹配前邊的正規表示式...
正規表示式 re模組
re是python中的正規表示式模組,正則也是每個人程式設計之路上必備的基礎技能。這部落格希望即便從來沒接觸過的人看了也會使用正規表示式字元 含義.匹配除了換行符外的任何字元。可以用re.dotall來設定匹配任何字元,包括換行符 丨a丨b 表示正規表示式匹配a或者b 匹配輸入字串開始的位置,如果設...
re模組正規表示式
正規表示式 1 舉例 re校驗 import re while true phone number input 請輸入手機號碼 strip 需求 11位 開頭13 14 15 19 引數1 正規表示式 引數2 需要過濾的字串 代表 開頭 代表 結束 代表 或 13 14 可以獲取乙個值,判斷是否是1...