python day23 正規表示式,RE

2022-05-02 10:15:10 字數 1979 閱讀 4828

一. 正規表示式

元字元.   匹配出換行符以外的所有字元

\w匹配數字  字母  下劃線

\s 匹配 空白符

\b單詞的末尾

\d 匹配數字

\w  非 數字 字母 下劃線

\d  非數字

\s 非空白符

^ 開頭

$ 結尾

[ ] 字元組

[ ^ ] 除了字元組中的元素外

量詞 限定符

*  +

? 零或一

n次 p,或更多

n-m次

貪婪匹配: * + {} 盡可能的多匹配結果

.*  匹配除換行符

分組()

#

這個分組是優先順序

#(?: ) 去掉優先順序

轉義 \ 

\n  換行

\\n  \n

\ .  轉義

\ /轉義

\ ?轉義

二. re模組  

findall() 獲取到匹配的所有內容

lst = re.findall('

\w+','

alex and exo')

print(lst)

finditer() 匹配到所有內容  返回迭代器

it = re.finditer('

\w+','

mai l fo leng

') #

返回的迭代器

for el in

it:

print(el.group())

search()  搜尋. 查到了就返回

res = re.search('

e','

eeeeaassd

') #

搜尋,搜到結果就返回

print(res.group())

match()  匹配. 從頭開始匹配

res = re.match('

\w+','

alex is not a good man

')#從頭匹配,如果匹配到了就返回

print(res.group())

r"(?p正則)"

其他

#

替換ret = re.sub(r"

\d+","

_sb_

","alex333wusir333")

print

(ret)

#替換,返回的結果帶有次數

res = re.subn(r"

\d+","

_sb_

","alex333wusir333")

print(res)

obj = re.compile(r'

alex(?p\d+)and

') #

把正規表示式預載入

res = obj.search('

alex250andwusir38ritian2')

print

(res.group())

print(res.group('

name'))

res = re.search(r'

a(?p\d)

','a1wsdweq1qaqa2')

print

(res.group())

print(res.group('

name

'))

Python day8 正規表示式

python php正規表示式 d 匹配乙個數字字元,還可以使用 0 9 d 匹配乙個非數字字元,還可以使用 0 9 w 匹配包括下劃線的任何單詞字元,還可以使用 0 9a za z w 匹配任何非單詞字元,還可以使用 w s 匹配任何空白字元,space縮寫 s 匹配任何非空白字元,還可以使用 s...

學習Python Day16 正規表示式

正規表示式是一種工具 一種專門用做字串匹配的工具,能夠在某些情況下能讓字串的處理變得非常簡單。匹配符號 1.普通字元 2.匹配任意乙個字元 3.d 匹配任意乙個數字字元 4.d 匹配任意乙個非數字字元 5.s 匹配任意乙個空白字元 6.s 匹配任意乙個非空白字元 7.w 匹配任意乙個數字 字母或者下...

精通正規表示式 2 3

perl語言是一門功能強大的指令碼語言,誕生於20世紀80年代末期,其思想主要來自其他的程式語言和工具。perl關於文字處理和正規表示式的許多概念來自兩種專業化的語言awk和sed。使用正規表示式時,主要有3個問題值得注意 1 支援的元字元,以及這些元字元的意義。這通常稱為正規表示式的 流派 2 正...