Python——正則表達(dá)式re模塊

Python的正則表達(dá)式

成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比古浪網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式古浪網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋古浪地區(qū)。費(fèi)用合理售后完善,10多年實(shí)體公司更值得信賴。

Python中使用re模塊提供了正則表達(dá)式處理的能力

常量

Python——正則表達(dá)式 re模塊

使用 | 位或 運(yùn)算開(kāi)啟多種選項(xiàng)

方法

import re

編譯

re.compile(pattern, flags=0)

設(shè)定flags、編譯模式,返回正則表達(dá)式對(duì)象 regex。

pettern就是正則表達(dá)式字符串,flags是選項(xiàng),正則表達(dá)式需要被編譯,為了提高效率,這些寫(xiě)編譯后的結(jié)果被保存,下次使用同的pattern的時(shí)候,就不需要再次版編譯

re的其它方法為了提高效率都調(diào)用了編譯方法,就是為了提速

單次匹配

re.match(pattern,string,flags=0)

regex.match(string [,pos [,endpos]])

返回match對(duì)象

match匹配從字符串的開(kāi)頭匹配,regex對(duì)象match方法可以重設(shè)定個(gè)開(kāi)始位置和結(jié)束位置。

re.search(pattern,string,flags=0)

regex.search(string [,pos [,endpos]])

返回match對(duì)象

從頭搜索直到第一個(gè)匹配,regex對(duì)象serch方法可以沖設(shè)定開(kāi)始位置和結(jié)束位置。

re.fullmatch(pattern,string,flags=0)

regex.fullmatch(string [,pos [,endpos]])

返回match對(duì)象

整個(gè)字符串和正則表達(dá)式匹配

全文搜索

re.findall(pattren,string,flags=0)

regex.findall(string [, pos [,endpos]])

對(duì)整個(gè)字符串,從左至右,返回左右匹配項(xiàng)的列表

如果pattern使用組,則列表元素為組的匹配內(nèi)容,不使用組,則元素為匹配內(nèi)容

re.findeiter(pattern,striing,flags=0)

regex,finditer(string [,pos [,endpos]])

對(duì)整個(gè)字符串,從左至右,返回所有匹配項(xiàng),返回迭代器

注意:迭代出來(lái)的元素為match對(duì)象

匹配替換

re.sub(pattern,replacement,string,count=0,flags=0)

regex.sub(replacement,string,count=0)

返回new_string

使用pattern 對(duì)字符串string 進(jìn)行匹配,對(duì)匹配項(xiàng)使用replacement替換

repalcement可以是string、bytes、function

re.subn(pattern,replacement,string,count=0,flags=0)

regex.subn(replacement,string,count=0)

同re.sub 返回一個(gè)元組(new_string , number_of_sub_made)

分割字符串

字符串的分割函數(shù)split , 太難用,不能指定多個(gè)字符進(jìn)行分割

re.split(pattern,string,maxsplit=0,flags=0)

regex.split(string,maxsplit=0)

分組

使用小括號(hào)的pattern捕獲的數(shù)據(jù)被放到了組group中。

match、search 函數(shù)可以返回match對(duì)象;findall 返回字符串列表;finditer返回一個(gè)個(gè)match對(duì)象

如果pattern中使用了分組,如果有匹配的結(jié)果,會(huì)在match對(duì)象中:

1.使用,group(n)方式返回對(duì)應(yīng)分組,1~N 是對(duì)應(yīng)的分組,0返回整個(gè)匹配的字符串

2.如果使用了命名分組沒(méi),可以使用group(“name”)的方式獲取分組

3.也可以使用groups()返回所有分組

4.使用groupdict()返回所有命名的分組

matchaer.group() 返回 字符串

matchaer.group(‘name’) 返回 字符串

matcher.groups() 返回 分組組成的tuple

matcher.groupdict()

網(wǎng)頁(yè)題目:Python——正則表達(dá)式re模塊
本文來(lái)源:http://muchs.cn/article8/pjjhop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營(yíng)銷企業(yè)網(wǎng)站制作、自適應(yīng)網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)ChatGPT、軟件開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)