色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

python正則是什么?

謝彥文2年前13瀏覽0評論

Python大星掏出了秘密武器--《正則心法》

學會這門獨門武器,在“爬者”境界下將如探囊取物

“宮廷玉液酒,一百八一杯,這酒怎么樣,看我給你吹”。

先看下正則測試小工具,一般人我不告訴他

http://tool.oschina.net/regex/

小試牛刀:

是不是很神奇...

來來來,Python大星傳授你一套《正則心法》

圖1

圖2

考驗你悟性的時候

從《正則心法》中我們可以看到:

“斜杠+小寫字母”和“斜杠+大寫字母”語義相反

含大寫字母的一般是否定語句

這些字母不需要死記硬背,背后都有其自然規律

實在記不住,點擊收藏

作為"爬蟲英語四級”的老玩家,小case

w---world

s---space

d---digital

接下來

我會依次展示《正則心法》的奧秘之處

好的“心法”必須襯好的“武器”

re庫了解哈

“正則心法”第一式--match

當我們用《正則心法》第一式獲取到匹配數據,

你以為就over了嗎?

刁鉆需求的任務:提取匹配數據中的數字

^:匹配一行字符串的開頭

\s:匹配空格

\d+:匹配1個或多個數字

在正則表達式中使用英文括號()

group()和group(0)會提取完整的匹配結果

group(1)會匹配第一個括號中的子字符串

假如正則表達式后面還有()包括的內容,那么可以依次用group(2)、group(3)等來獲取

“正則心法”第二式--通用匹配

Python大星縱覽群書,發現個重大密碼

通配符無一例外的使用.*

“正則心法”第三式--貪婪與非貪婪

●什么是貪婪匹配?

在貪婪匹配下,.會匹配盡可能多的字符

括號中是\d+,

也就是至少一個數字,并沒有指定具體多少個數字,

因此,.*就盡可能匹配多的字符,這里就把123456匹配了,

給\d+留下一個可滿足條件的數字7,最后得到的內容就只有數字7了。

●什么又是非貪婪匹配?

非貪婪匹配就是盡可能匹配少的字符

非貪婪匹配的寫法是.*?

貪婪匹配就是匹配盡可能多的字符

非貪婪匹配就是匹配盡可能少的字符

“正則心法”第四式--修飾符

當content中含有換行符或者大小寫時

需要紅藍buff加持--“修飾符”

跟隨Python先打紅buff--re.S(匹配包括換行在內的所有字符)

1234567

再打藍buff--re.I(使匹配對大小寫不敏感,注意:I是i的大寫)

1234567

“正則心法”第五式--轉義匹配

說到“轉義字符”,萬金油“斜杠”來表示

<re.Matchobject;span=(0,22),match='()www.toutiao.com'>

“正則心法”第六式--search

前面五式,我們使用的match方法是從字符串的開頭開始匹配的,

一旦開頭不匹配,那么整個匹配就失敗了

Python大星傳授你新的一招--search

在匹配時,search方法會依次掃描字符串,直到找到第一個符合規則的字符串,然后返回匹配內容,如果搜索完了還沒有找到,就返回None。

“正則心法”第七式--findall

第六式我們能輕松的用search方法獲取匹配正則表達式的第一個內容

但是...

當我想要匹配所有符合正則表達式的所有內容呢?

['1234567','7654321']

“正則心法”第八式--sub

除了使用正則表達式提取信息外,有時候還需要借助它來修改文本

Python

“正則心法”第九式--compile

最后,Python傳授畢生功力

準備好接收了嗎?

將正則字符串編譯成正則表達式對象,以便在后面的匹配中復用

呼氣,吸氣,收!!!

這套《正則心法》你get到了嗎?