python使用正則表達式替換匹配成功的組并輸出替換的次數
正則表達式是一個特殊的字符序列,它能幫助你方便的檢查一個字符串是否與某種模式匹配。
Python 自1.5版本起增加了re 模塊,它提供 Perl 風格的正則表達式模式。
re 模塊使 Python 語言擁有全部的正則表達式功能。
compile 函數根據一個模式字符串和可選的標志參數生成一個正則表達式對象。該對象擁有一系列方法用于正則表達式匹配和替換。
re 模塊也提供了與這些方法功能完全一致的函數,這些函數使用一個模式字符串做為它們的第一個參數。
本章節(jié)主要介紹python使用正則表達式替換匹配成功的組并輸出替換的次數。
在前面我們學習過怎么樣限制替換的次數,如果我們想知道正則表達式里匹配成功之后,替換字符串的次數,那么需要怎么辦呢?這是一個好問題,這時就需要采用另一個外函數subn()了。這個函數不但輸出替換后的內容,還輸出替換的次數,例子:
#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))
結果輸出如下:
Text: Make this **cai**. This **junsheng**. Bold: ('Make this <b>cai</b>. This <b>junsheng</b>.', 2)
ps:關于正則表達式有幾個需要交代的
python的正則表達式如果捕獲需要分組則使用這個語法(?P<命名>匹配的正則表達式)
re.compile用于編譯正則表達式并返回對象
p.finditer返回所有匹配的迭代器
p.sub將匹配項傳入回調函數,并且用返回值替換文本
m.groupdict,可以使用則的分組命名取相應的值
總結
以上所述是小編給大家介紹的python使用正則表達式替換匹配成功的組并輸出替換的次數,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
python教程之利用pyautogui圖形自動化擊敗重復性辦公任務
在使用Python做腳本的話,有兩個庫可以使用,一個為PyUserInput庫,另一個為pyautogui庫,就本人而言更喜歡使用pyautogui庫,該庫功能多,使用便利,下面這篇文章主要給大家介紹了關于python教程之利用pyautogui圖形自動化擊敗重復性辦公任務的相關資料,需要的朋友可以參考下2022-03-03一篇教程教你學會Python進制轉換(十進制轉二進制、八進制、十六進制)
計算機中只有1和0,所以就導致很多時候需要進制轉換,本文介紹了Python進制轉換,十進制轉二進制,十進制轉八進制,十進制轉十六進制,有興趣的可以了解一下2021-05-05