Python正規表示式 re模組的實際使用

2021-09-11 19:40:53 字數 1416 閱讀 7512

python的正規表示式在實際的工程中有很多的用途,比如我們想提取某個語段中的特定字元,like 郵件中的郵件位址等等

首先我們先說一下比較low的一種做法,比如在一句話中找到 『find wyk』 , 我們可以使用python中的 in 方法,比如 『find』 in sentence 如果存在會返回true,不存在則返回false,但是如果該檔案中有很多的find 語句,比如 『find wykwyk』 『find w』 『find xxy』 『find wykno』 等等,單純的find會返回很多的值,如果我們想再多限制一下查詢的條件,那麼使用 in 關鍵字就沒有使用正規表示式方便了。

正規表示式含義

. # 點可代表一切字元

\ # 起轉義作用

[…] # 指代方括號中的任意字元

\d # 指代數字0-9

\d # 指代非數字

\s # 指代一切空格,包括tab製表符、空格、換行等

\s # 指代非空格

\w # 指代大小寫字母、數字和下劃線

\w # 指代非大小寫字母、數字和下劃線

*#匹配前面字元 >=0 次

+#匹配前面字元1次及以上

? # 匹配前面字元0次或1次

# 匹配m次

# 匹配m到n次

# 至少匹配m次

結合乙個具體的例子來分析:

1、判斷列表中有沒有163郵箱

這裡也可以不用compile,只是預先將字串轉化為正規表示式物件,效率更高,也可以直接result=re.match('(.)*163.com$',sentence[i]) ,是一樣的結果。
美元符號代表以此結尾

2、找出郵箱的使用者名稱

這裡使用findall來進行匹配,使用 findall 要注意有沒有括號的區別(有括號結束出括號中也就是組的內容,沒有括號就輸出匹配的全部字串)

3、使用search找到郵箱使用者名稱

match 方法是在開頭處匹配模式,注意和search的區別,並且這裡要特別注意組(group)的概念。

python正規表示式re模組

嗯 看看就好 小白可能會坑人 有錯誤的話麻煩指出來謝謝 2018年3月15日13 54 11 re 模組 函式與方法的區別 如果是乙個函式,用類名去呼叫,如果是乙個方法,用物件去呼叫 1.compile函式 編 print n1 10 n import re pattern re.compile r...

Python 正規表示式 re模組

在python中,需要用到正規表示式時,就需要匯入re模組進行操作,們可以直接呼叫來實現正則匹配 普通字元 匹配自身 abcabc 匹配任意除換行符 n 外的字元 在dotall模式中也能匹配換行符 a.cabc 轉義字元,使後乙個字元改變原來的意思 a.c a c a.c a c 匹配前乙個字元0...

re模組 正規表示式 python

d 匹配數字 w 匹配字母或數字 s 匹配乙個空格 包括tab s 表示至少乙個空格 表示任意字元 包括零個 表示至少乙個字元 表示0個或1個字元 表示n個字元 表示n m個字元 可以匹配任意字元 a b 表示可以匹配a或b 行的開頭 d 表示必須以數字開頭 表示結尾 d 表示必須以數字結尾 r 字...