日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

python正則表達(dá)式使用實(shí)例 正則表達(dá)式測(cè)試工具( 二 )


代碼案例:

python正則表達(dá)式使用實(shí)例 正則表達(dá)式測(cè)試工具


正則表達(dá)式中表示匹配行的開(kāi)頭,默認(rèn)模式下它只能匹配字符串的開(kāi)頭;而在多行模式下,它還可以匹配 換行符n后面的字符 。
注意:正則語(yǔ)法中匹配行開(kāi)頭、A匹配字符串開(kāi)頭,單行模式下它兩效果一致,多行模式下A不能識(shí)別n 。
5. VERBOSE語(yǔ)法:re.VERBOSE 或簡(jiǎn)寫(xiě)為 re.X
作用:詳細(xì)模式,可以在正則表達(dá)式中加注解!
代碼案例:
python正則表達(dá)式使用實(shí)例 正則表達(dá)式測(cè)試工具


默認(rèn)模式下并不能識(shí)別正則表達(dá)式中的注釋?zhuān)敿?xì)模式是可以識(shí)別的 。
當(dāng)一個(gè)正則表達(dá)式十分復(fù)雜的時(shí)候,詳細(xì)模式或許能為你提供另一種注釋方式,但它不應(yīng)該成為炫技的手段,建議謹(jǐn)慎考慮后使用!
6.LOCALE語(yǔ)法:re.LOCALE 或簡(jiǎn)寫(xiě)為 re.L
作用:由當(dāng)前語(yǔ)言區(qū)域決定w,W,b,B和大小寫(xiě)敏感匹配,這個(gè)標(biāo)記只能對(duì)byte樣式有效 。這個(gè)標(biāo)記官方已經(jīng)不推薦使用,因?yàn)檎Z(yǔ)言區(qū)域機(jī)制很不可靠,它一次只能處理一個(gè) “習(xí)慣”,而且只對(duì)8位字節(jié)有效 。
注意:由于這個(gè)標(biāo)記官方已經(jīng)不推薦使用,而且豬哥也沒(méi)使用過(guò),所以就不給出實(shí)際的案例!
7.UNICODE語(yǔ)法:re.UNICODE 或簡(jiǎn)寫(xiě)為 re.U
作用:與 ASCII 模式類(lèi)似,匹配unicode編碼支持的字符,但是 Python 3 默認(rèn)字符串已經(jīng)是Unicode,所以有點(diǎn)冗余 。
8. DEBUG語(yǔ)法:re.DEBUG
作用:顯示編譯時(shí)的debug信息 。
代碼案例:
python正則表達(dá)式使用實(shí)例 正則表達(dá)式測(cè)試工具


雖然debug模式下確實(shí)會(huì)打印編譯信息,但豬哥并不理解這是什么語(yǔ)言 以及表達(dá)的含義,希望了解的朋友能不吝賜教 。
9.TEMPLATE語(yǔ)法:re.TEMPLATE 或簡(jiǎn)寫(xiě)為 re.T
作用:豬哥也沒(méi)搞懂TEMPLATE的具體用處,源碼注釋中寫(xiě)著:disable backtracking(禁用回溯),有了解的同學(xué)可以留言告知!
python正則表達(dá)式使用實(shí)例 正則表達(dá)式測(cè)試工具


10. 常量總結(jié)9個(gè)常量中,前5個(gè)(IGNORECASE、ASCII、DOTALL、MULTILINE、VERBOSE)有用處,兩個(gè)(LOCALE、UNICODE)官方不建議使用、兩個(gè)(TEMPLATE、DEBUG)試驗(yàn)性功能,不能依賴(lài) 。
常量在re常用函數(shù)中都可以使用,查看源碼可得知 。
python正則表達(dá)式使用實(shí)例 正則表達(dá)式測(cè)試工具


常量可疊加使用,因?yàn)槌A恐刀际?的冪次方值,所以是可以疊加使用的,疊加時(shí)請(qǐng)使用 |符號(hào),請(qǐng)勿使用+符號(hào)!
python正則表達(dá)式使用實(shí)例 正則表達(dá)式測(cè)試工具


最后來(lái)一張思維導(dǎo)圖總結(jié)一下re模塊中的常量吧,需要高清圖或者xmind文件的同學(xué)可在文章末尾獲取 。
python正則表達(dá)式使用實(shí)例 正則表達(dá)式測(cè)試工具



python正則表達(dá)式使用實(shí)例 正則表達(dá)式測(cè)試工具


re模塊函數(shù)re模塊有12個(gè)函數(shù),豬哥將以功能分類(lèi)來(lái)講解;這樣更具有比較性,同時(shí)也方便記憶 。
1.查找一個(gè)匹配項(xiàng)查找并返回一個(gè)匹配項(xiàng)的函數(shù)有3個(gè):search、match、fullmatch,他們的區(qū)別分別是:
  1. search: 查找任意位置的匹配項(xiàng)
  2. match: 必須從字符串開(kāi)頭匹配
  3. fullmatch: 整個(gè)字符串與正則完全匹配
我們?cè)賮?lái)根據(jù)實(shí)際的代碼案例比較:
案例1:
python正則表達(dá)式使用實(shí)例 正則表達(dá)式測(cè)試工具


案例1中search函數(shù)是在字符串中任意位置匹配,只要有符合正則表達(dá)式的字符串就匹配成功,其實(shí)有兩個(gè)匹配項(xiàng),但search函數(shù)值返回一個(gè) 。

推薦閱讀