麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Python > 正文

Python中正則表達(dá)式小結(jié)

2020-02-15 23:06:05
字體:
供稿:網(wǎng)友

注意:本文基于Python2.4完成;如果看到不明白的詞匯請記得百度谷歌或維基,whatever。

1. 正則表達(dá)式基礎(chǔ)

1.1. 簡單介紹

正則表達(dá)式并不是Python的一部分。正則表達(dá)式是用于處理字符串的強(qiáng)大工具,擁有自己獨(dú)特的語法以及一個獨(dú)立的處理引擎,效率上可能不如str自帶的方法,但功能十分強(qiáng)大。得益于這一點,在提供了正則表達(dá)式的語言里,正則表達(dá)式的語法都是一樣的,區(qū)別只在于不同的編程語言實現(xiàn)支持的語法數(shù)量不同;但不用擔(dān)心,不被支持的語法通常是不常用的部分。如果已經(jīng)在其他語言里使用過正則表達(dá)式,只需要簡單看一看就可以上手了。

下圖展示了使用正則表達(dá)式進(jìn)行匹配的流程:

正則表達(dá)式的大致匹配過程是:依次拿出表達(dá)式和文本中的字符比較,如果每一個字符都能匹配,則匹配成功;一旦有匹配不成功的字符則匹配失敗。如果表達(dá)式中有量詞或邊界,這個過程會稍微有一些不同,但也是很好理解的,看下圖中的示例以及自己多使用幾次就能明白。

下圖列出了Python支持的正則表達(dá)式元字符和語法:  

1.2. 數(shù)量詞的貪婪模式與非貪婪模式

正則表達(dá)式通常用于在文本中查找匹配的字符串。Python里數(shù)量詞默認(rèn)是貪婪的(在少數(shù)語言里也可能是默認(rèn)非貪婪),總是嘗試匹配盡可能多的字符;非貪婪的則相反,總是嘗試匹配盡可能少的字符。例如:正則表達(dá)式"ab*"如果用于查找"abbbc",將找到"abbb"。而如果使用非貪婪的數(shù)量詞"ab*?",將找到"a"。

1.3. 反斜杠的困擾

與大多數(shù)編程語言相同,正則表達(dá)式里使用"/"作為轉(zhuǎn)義字符,這就可能造成反斜杠困擾。假如你需要匹配文本中的字符"/",那么使用編程語言表示的正則表達(dá)式里將需要4個反斜杠"http:////":前兩個和后兩個分別用于在編程語言里轉(zhuǎn)義成反斜杠,轉(zhuǎn)換成兩個反斜杠后再在正則表達(dá)式里轉(zhuǎn)義成一個反斜杠。Python里的原生字符串很好地解決了這個問題,這個例子中的正則表達(dá)式可以使用r"http://"表示。同樣,匹配一個數(shù)字的"http://d"可以寫成r"/d"。有了原生字符串,你再也不用擔(dān)心是不是漏寫了反斜杠,寫出來的表達(dá)式也更直觀。

1.4. 匹配模式

正則表達(dá)式提供了一些可用的匹配模式,比如忽略大小寫、多行匹配等,這部分內(nèi)容將在Pattern類的工廠方法re.compile(pattern[, flags])中一起介紹。

2. re模塊

2.1. 開始使用re

Python通過re模塊提供對正則表達(dá)式的支持。使用re的一般步驟是先將正則表達(dá)式的字符串形式編譯為Pattern實例,然后使用Pattern實例處理文本并獲得匹配結(jié)果(一個Match實例),最后使用Match實例獲得信息,進(jìn)行其他的操作。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 蜜桃一本色道久久综合亚洲精品冫 | 久久精品国产亚洲7777小说 | 亚洲精品无码不卡在线播放he | 欧美一级片 在线播放 | 欧美五月婷婷 | 美女视频大全网站免费 | 亚洲成人午夜精品 | 国产亚洲高清在线精品不卡 | 国产亚洲精品视频中文字幕 | 伊人yinren22综合网色 | 综合网天天射 | 五月天影院,久久综合, | 国产理论视频在线观看 | 午夜视频在线看 | 国产午夜精品久久久久 | 视频毛片| 日本高清在线免费 | 麻豆国产一区 | 国产成人高潮免费观看精品 | 爽爽视频免费看 | 中国黄色一级生活片 | 国产亚洲精品综合一区91555 | 免费人成在线播放 | 中文字幕在线观看视频一区 | av在线免费观看播放 | 日本不卡一区二区三区在线 | 亚洲视屏在线观看 | 欧美日韩中文字幕在线视频 | 日本在线视频一区二区三区 | 黄色片网站免费看 | 亚洲人成网在线观看 | 欧美亚洲国产一区二区三区 | 久久精品99久久久久久2456 | 日韩精品免费看 | www.99re14.com| 日本不卡一区二区三区在线观看 | 多人乱大交xxxxx变态 | 一级大片视频 | 91av网址| 色播视频在线播放 | 万圣街在线观看免费完整版 |