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微信庫(kù)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字符串常用方法以及其應(yīng)用場(chǎng)景詳解
本人學(xué)習(xí)python時(shí)的總結(jié),并不需要記住,知道有這個(gè)方法,拿起來(lái)用就行,下面這篇文章主要給大家介紹了關(guān)于Python字符串常用方法以及其應(yīng)用場(chǎng)景的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08Python如何根據(jù)字幕文件自動(dòng)給視頻添加字幕效果
視頻中字幕的重要性不用多說(shuō)了,下面這篇文章主要給大家介紹了關(guān)于Python如何根據(jù)字幕文件自動(dòng)給視頻添加字幕效果的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-02-02python使用原始套接字發(fā)送二層包(鏈路層幀)的方法
今天小編就為大家分享一篇python使用原始套接字發(fā)送二層包(鏈路層幀)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07Flask框架實(shí)現(xiàn)給視圖函數(shù)增加裝飾器操作示例
這篇文章主要介紹了Flask框架實(shí)現(xiàn)給視圖函數(shù)增加裝飾器操作,結(jié)合實(shí)例形式分析了flask框架視圖添加裝飾器的具體操作方法及相關(guān)注意事項(xiàng),需要的朋友可以參考下2018-07-07