Python中re.compile函數(shù)的使用方法
1. 使用re.compile
re模塊中包含一個(gè)重要函數(shù)是compile(pattern [, flags]) ,該函數(shù)根據(jù)包含的正則表達(dá)式的字符串創(chuàng)建模式對(duì)象。
可以實(shí)現(xiàn)更有效率的匹配。在直接使用字符串表示的正則表達(dá)式進(jìn)行search,match和findall操作時(shí),python會(huì)將字符串轉(zhuǎn)換為正則表達(dá)式對(duì)象。而使用compile完成一次轉(zhuǎn)換之后,在每次使用模式的時(shí)候就不用重復(fù)轉(zhuǎn)換。
當(dāng)然,使用re.compile()函數(shù)進(jìn)行轉(zhuǎn)換后,re.search(pattern, string)的調(diào)用方式就轉(zhuǎn)換為 pattern.search(string)的調(diào)用方式。
其中,后一種調(diào)用方式中,pattern是用compile創(chuàng)建的模式對(duì)象。如下:
>>> import re
>>> some_text = 'a,b,,,,c d'
>>> reObj = re.compile('[, ]+')
>>> reObj.split(some_text)
['a', 'b', 'c', 'd']2.不使用re.compile
在進(jìn)行search,match等操作前不適用compile函數(shù),會(huì)導(dǎo)致重復(fù)使用模式時(shí),需要對(duì)模式進(jìn)行重復(fù)的轉(zhuǎn)換。降低匹配速度。而此種方法的調(diào)用方式,更為直觀。
如下:
>>> import re
>>> some_text = 'a,b,,,,c d'
>>> re.split('[, ]+',some_text)
['a', 'b', 'c', 'd']到此這篇關(guān)于Python中re.compile函數(shù)的使用方法的文章就介紹到這了,更多相關(guān)Python re.compile 函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 10分鐘教你用Python實(shí)現(xiàn)微信自動(dòng)回復(fù)功能
- python實(shí)現(xiàn)微信自動(dòng)回復(fù)功能
- python itchat實(shí)現(xiàn)微信自動(dòng)回復(fù)的示例代碼
- 利用python微信庫itchat實(shí)現(xiàn)微信自動(dòng)回復(fù)功能
- python實(shí)現(xiàn)微信小程序自動(dòng)回復(fù)
- python微信公眾號(hào)之關(guān)鍵詞自動(dòng)回復(fù)
- python實(shí)現(xiàn)微信機(jī)器人: 登錄微信、消息接收、自動(dòng)回復(fù)功能
- 關(guān)于Python中compile() 函數(shù)簡(jiǎn)單實(shí)用示例詳解
- Python正則表達(dá)式re.compile()和re.findall()詳解
- Python 正則 re.compile 真的必需嗎
- Python中請(qǐng)不要再用re.compile了
- python內(nèi)置函數(shù)compile(),complex()的使用
相關(guān)文章
python selenium對(duì)應(yīng)的瀏覽器chromedriver版本不一致問題
這篇文章主要介紹了python selenium對(duì)應(yīng)的瀏覽器chromedriver版本不一致問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08
使用Anaconda創(chuàng)建Python指定版本的虛擬環(huán)境的教程詳解
由于工作的需要和學(xué)習(xí)的需要,需要?jiǎng)?chuàng)建不同Python版本的虛擬環(huán)境,所以這篇文章主要為大家詳細(xì)介紹了如何使用Anaconda創(chuàng)建Python指定版本的虛擬環(huán)境,需要的可以參考下2024-03-03
Python運(yùn)算符之比較運(yùn)算符的核心概念與實(shí)踐方法
這篇文章主要為大家詳細(xì)介紹了Python運(yùn)算符中比較運(yùn)算符(等于,不等于,大于,小于等)的核心概念與實(shí)踐方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下2026-05-05
python 百度aip實(shí)現(xiàn)文字識(shí)別的實(shí)現(xiàn)示例
百度aip將圖片或掃描件中的文字識(shí)別成可編輯的文本,本文主要介紹了python 百度aip實(shí)現(xiàn)文字識(shí)別,具有一定的參考價(jià)值,感興趣的可以了解一下2021-08-08
python實(shí)現(xiàn)linux服務(wù)器批量修改密碼并生成execl
這篇文章主要介紹了python實(shí)現(xiàn)linux服務(wù)器批量修改密碼并生成execl示例,需要的朋友可以參考下2014-04-04
基于深度學(xué)習(xí)和OpenCV實(shí)現(xiàn)目標(biāo)檢測(cè)
這篇文章主要介紹了通過使用OpenCV進(jìn)行基于深度學(xué)習(xí)的對(duì)象檢測(cè)以及使用OpenCV檢測(cè)視頻,文中的示例代碼講解詳細(xì),需要的可以參考一下2021-12-12
Python進(jìn)行數(shù)據(jù)拆分和合并的超詳細(xì)指南
這篇文章主要來帶大家深入了解一下Python中數(shù)據(jù)拆分和合并的各種方法,涵蓋基礎(chǔ)到高級(jí)技巧,并提供大量實(shí)際案例,希望對(duì)大家有所幫助2025-07-07
對(duì)Python3之方法的覆蓋與super函數(shù)詳解
今天小編就為大家分享一篇對(duì)Python3之方法的覆蓋與super函數(shù)詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06
Django實(shí)現(xiàn)簡(jiǎn)單網(wǎng)頁彈出警告代碼
今天小編就為大家分享一篇Django實(shí)現(xiàn)簡(jiǎn)單網(wǎng)頁彈出警告代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11

