python使用正則表達(dá)式替換匹配成功的組并輸出替換的次數(shù)
正則表達(dá)式是一個(gè)特殊的字符序列,它能幫助你方便的檢查一個(gè)字符串是否與某種模式匹配。
Python 自1.5版本起增加了re 模塊,它提供 Perl 風(fēng)格的正則表達(dá)式模式。
re 模塊使 Python 語(yǔ)言擁有全部的正則表達(dá)式功能。
compile 函數(shù)根據(jù)一個(gè)模式字符串和可選的標(biāo)志參數(shù)生成一個(gè)正則表達(dá)式對(duì)象。該對(duì)象擁有一系列方法用于正則表達(dá)式匹配和替換。
re 模塊也提供了與這些方法功能完全一致的函數(shù),這些函數(shù)使用一個(gè)模式字符串做為它們的第一個(gè)參數(shù)。
本章節(jié)主要介紹python使用正則表達(dá)式替換匹配成功的組并輸出替換的次數(shù)。
在前面我們學(xué)習(xí)過(guò)怎么樣限制替換的次數(shù),如果我們想知道正則表達(dá)式里匹配成功之后,替換字符串的次數(shù),那么需要怎么辦呢?這是一個(gè)好問(wèn)題,這時(shí)就需要采用另一個(gè)外函數(shù)subn()了。這個(gè)函數(shù)不但輸出替換后的內(nèi)容,還輸出替換的次數(shù),例子:
#python 3.6 #蔡軍生 #http://blog.csdn.net/caimouse/article/details/51749579 # import re bold = re.compile(r'\*{2}(?P<bold_text>.*?)\*{2}') text = 'Make this **cai**. This **junsheng**.' print('Text:', text) print('Bold:', bold.subn(r'<b>\g<bold_text></b>', text))
結(jié)果輸出如下:
Text: Make this **cai**. This **junsheng**. Bold: ('Make this <b>cai</b>. This <b>junsheng</b>.', 2)
ps:關(guān)于正則表達(dá)式有幾個(gè)需要交代的
python的正則表達(dá)式如果捕獲需要分組則使用這個(gè)語(yǔ)法(?P<命名>匹配的正則表達(dá)式)
re.compile用于編譯正則表達(dá)式并返回對(duì)象
p.finditer返回所有匹配的迭代器
p.sub將匹配項(xiàng)傳入回調(diào)函數(shù),并且用返回值替換文本
m.groupdict,可以使用則的分組命名取相應(yīng)的值
總結(jié)
以上所述是小編給大家介紹的python使用正則表達(dá)式替換匹配成功的組并輸出替換的次數(shù),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
在langchain中對(duì)大模型的輸出進(jìn)行格式化實(shí)現(xiàn)
這篇文章主要為大家介紹了在langchain中對(duì)大模型的輸出進(jìn)行格式化實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11opencv-python圖像配準(zhǔn)(匹配和疊加)的實(shí)現(xiàn)
圖像配準(zhǔn)需是指對(duì)不同條件下得到的兩幅或多幅圖像進(jìn)行匹配、疊加的過(guò)程。本文詳細(xì)的介紹了如何使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06python教程之利用pyautogui圖形自動(dòng)化擊敗重復(fù)性辦公任務(wù)
在使用Python做腳本的話,有兩個(gè)庫(kù)可以使用,一個(gè)為PyUserInput庫(kù),另一個(gè)為pyautogui庫(kù),就本人而言更喜歡使用pyautogui庫(kù),該庫(kù)功能多,使用便利,下面這篇文章主要給大家介紹了關(guān)于python教程之利用pyautogui圖形自動(dòng)化擊敗重復(fù)性辦公任務(wù)的相關(guān)資料,需要的朋友可以參考下2022-03-03一篇文章帶你了解python標(biāo)準(zhǔn)庫(kù)--os模塊
在本篇內(nèi)容里小編給大家整理的是關(guān)于Python中os模塊及用法相關(guān)知識(shí)點(diǎn),有興趣的朋友們可以學(xué)習(xí)下,希望能給你帶來(lái)幫助2021-08-08pandas庫(kù)中to_datetime()方法的使用解析
這篇文章主要介紹了pandas庫(kù)中to_datetime()方法的使用解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07一篇教程教你學(xué)會(huì)Python進(jìn)制轉(zhuǎn)換(十進(jìn)制轉(zhuǎn)二進(jìn)制、八進(jìn)制、十六進(jìn)制)
計(jì)算機(jī)中只有1和0,所以就導(dǎo)致很多時(shí)候需要進(jìn)制轉(zhuǎn)換,本文介紹了Python進(jìn)制轉(zhuǎn)換,十進(jìn)制轉(zhuǎn)二進(jìn)制,十進(jìn)制轉(zhuǎn)八進(jìn)制,十進(jìn)制轉(zhuǎn)十六進(jìn)制,有興趣的可以了解一下2021-05-05利用Python制作一個(gè)動(dòng)物識(shí)別小程序
動(dòng)物識(shí)別是計(jì)算機(jī)視覺(jué)和模式識(shí)別領(lǐng)域的重要研究方向,它涉及通過(guò)圖像或視頻數(shù)據(jù)自動(dòng)識(shí)別和分類不同種類的動(dòng)物,隨著數(shù)字圖像技術(shù)和機(jī)器學(xué)習(xí)方法的快速發(fā)展,動(dòng)物識(shí)別在實(shí)際應(yīng)用中具有廣泛的潛力,本文將給大家介紹如何基于Python制作一個(gè)動(dòng)物識(shí)別小程序2023-10-10