在python3中使用正規表示式需要引入re模組。
re.match 嘗試從字串的起始位置匹配乙個模式,如果不是起始位置匹配成功的話,match()就返回none。
函式語法:
re函式引數說明:.match
(pattern
,string
,flags=0
)
引數描述
pattern
匹配的正規表示式
string
要匹配的字串。
flags
標誌位,用於控制正規表示式的匹配方式,模式修飾符,如:re.l,re.s,re.u
re.search 掃瞄整個字串並返回第乙個成功的匹配。
函式語法:
rere.search()和re.match()方法的區別.search
(pattern
,string
,flags=0
)
re.match只匹配字串的開始,如果字串開始不符合正規表示式,則匹配失敗,函式返回none;而re.search匹配整個字串,直到找到乙個匹配。
python 的re模組提供了re.sub用於替換字串中的匹配項。
語法:
re引數:.sub
(pattern
,repl
,string
,count=0
)
pattern : 正則中的模式字串。
repl : 替換的字串,也可為乙個函式。
string : 要被查詢替換的原始字串。
count : 模式匹配後替換的最大次數,預設 0 表示替換所有的匹配。
epl 引數是乙個函式的情況
以下例項中將字串中的匹配的數字乘於 2:
結果:
re.sub()與re.subn()區別就是後者subn將匹配的字串個數呈現了出來,並和替換後的字串組成乙個元組。
compile 函式用於編譯正規表示式,生成乙個正規表示式( pattern )物件,供 match() 和 search() 這兩個函式使用。
語法格式為:
re在字串中找到正規表示式所匹配的所有子串,並返回乙個列表,如果沒有找到匹配的,則返回空列表。.compile
(pattern
[,flags
])
注意: match 和 search 是匹配一次 findall 匹配所有。
語法格式為:
findallstring 待匹配的字串。(string
[,pos
[,endpos
]])
pos 可選引數,指定字串的起始位置,預設為 0。
endpos 可選引數,指定字串的結束位置,預設為字串的長度。
和 findall 類似,在字串中找到正規表示式所匹配的所有子串,並把它們作為乙個迭代器返回。
resplit 方法按照能夠匹配的子串將字串分割後返回列表,它的使用形式如下:.finditer
(pattern
,string
,flags=0
)
python中常用正規表示式
print re.findall d 123abc 數字 1 2 3 print re.findall d abcaa123abc 非數字 a b c a a a b c print re.findall abc 123abcaaabc abc abc print re.findall aa nab...
python中常用正規表示式
1 匹配字母數字和下劃線 a za z0 9 等價於 w 取非 a za z0 9 等價於 w 2 匹配數字 0 9 等價與 d d 表示任意個數字。取非 0 9 等價與 d u4e00 u9fa5 匹配單個漢字,不含標點符號 u4e00 u9fa5 匹配詞語或以上漢字 取非 u4e00 u9fa5...
python3正規表示式
正規表示式,又稱規則表示式。英語 regular expression,在 中常簡寫為regex regexp或re 電腦科學的乙個概念。正規表示式通常被用來檢索 替換那些符合某個模式 規則 的文字。正規表示式是對字串操作的一種邏輯公式,就是用事先定義好的一些特定字元 及這些特定字元的組合,組成乙個...