常用模組 re模組

2022-09-03 03:33:08 字數 2686 閱讀 9445

由堆具有特殊意義的字元組成的式子。用於匹配查詢字串內容。

主要學習重點,就是學習這些字元的含義。

"abc"表示式不包含任何特殊字元,就是精準匹配,說白了判斷是否相同

print(re.findall('

abc','

abcbbb'))

#['abc']

\n \t \f

符號含義

\a從字元的開始處開始匹配

\z從字元的結尾處匹配

^從字元的開始處開始匹配

$從字元的結尾處匹配

^$為整體匹配

print(re.match('

^abc

','abccc'))

#print(re.match('

\aabc

','abccc'))

#

#

結尾 \z $

print(re.findall('

abc$

','dfabc'))

print(re.findall('

abc\z

','sjjfabc'))

#['abc']

#['abc']

判斷字元是否在乙個範圍內

符號含義

\w字母 數字 下劃線

\w非字母 數字 下劃線

\d數字

\d非數字

\s空白字元

\s非空字元

手動指定範圍 ascii碼表範圍

[^]指定範圍以外的內容 與上面相反

.除了換行符之外的任何字元

字元含義

*任意次數

+一次或多次

?0次或1次

*+都是貪婪匹配,會嘗試盡可能多取

給上述表示式加上?變成了非貪婪模式,盡可能的少取,最常用

print(re.findall('

\w+','

ndfjbsasb'))

print(re.findall('

\w+?

','ndfjbsasb'))

#['ndfjbsasb']

#['n', 'd', 'f', 'j', 'b', 's', 'a', 's', 'b']

給表示式中需要單獨獲取的部分加上括號

乙個表示式中可以有多個分組

用search或match得到match物件呼叫group傳入的索引來獲取分組內容

text = '

搶火車票

如果匹配的內容包括\ 得變成4個斜槓或者r'\\'

text = r'

a\b'

#匹配a\b

print(re.findall('

a\\\\b

',text))

print(re.findall(r'

a\\b

',text))

#['a\\b']

#['a\\b']

text = '

daaaccddddasd

'

檢索所有內容,在列表中顯示所有符合條件的字串

res = re.findall('a+'

,text)

print

(res)

#['aaa', 'a']

從開頭檢索內容,若開頭內容符合條件,則返回第乙個條件的match物件,否則返回none

res = re.match('d'

,text)

print

(res)

print

(res.group())##

d

檢索所有內容,內容第一符合條件,則返回第乙個符合條件的match物件,否則返回none

match物件可以通過.group()

res = re.search('a+'

,text)

print

(res)

print

(res.group())##

aaa

將傳入的字串表示式,轉變成乙個正則物件,可以適應各種re操作。

pa = re.compile('a+'

)print

(re.findall(pa,text))

#['aaa', 'a']

將字串根據條件切分,成字典形式

res = re.split('a+'

,text)

print

(res)

#['d', 'ccdddd', 'sd']

將字串根據條件替換,返回新的字串

text = '

daaaccddddasd

'res = re.sub('

a+','a'

,text)

print

(res)

#daccddddasd

常用模組之re模組

正規表示式是一門獨立語言 是通過一些特殊符號使用,從而在字串中篩選出想要的結果 如果想在python中使用正則,則需借助於內建模組re 字元組 包含乙個字元或者的意思 a z a z中任意取乙個字元 a z a z中任意取乙個字元 0 9 0 9中任意取乙個字元 特殊符號 特殊符號預設也只能單個單個...

常用模組之re

正規表示式是指用一連竄的特殊字元來表示常用的符號,用來篩選和匹配想要的內容 注 1.在括號內用 可以將查詢到非括號中內容也顯示出來 2.括號即表示乙個組,也表示只顯示內容 匹配所有的字元字母下劃線 print re.findall w asdas123 sd.dsad13 dsa a s d a s...

re模組常用方法

match string pos endpos string是待匹配的字串pos和endpos可選引數,指定字串的起始和終點位置,預設值分別是0和len 字串長度 match 方法 從起始位置開始查詢,一次匹配 re.match pattern,string,flags 0 result re.ma...