python字符串替換re.sub()方法解析
pattern可以是一個字符串也可以是一個正則,用于匹配要替換的字符,如果不寫,字符串不做修改。\1 代表第一個分組
repl是將會被替換的值,repl可以是字符串也可以是一個方法。如果是一個字符串,反斜杠會被處理為逃逸字符,如\n會被替換為換行,等等。repl如果是一個function,每一個被匹配到的字段串執(zhí)行替換函數(shù)。
\g<1> 代表前面pattern里面第一個分組,可以簡寫為\1,\g<0>代表前面pattern匹配到的所有字符串。
count是pattern被替換的最大次數(shù),默認(rèn)是0會替換所有。有時候可能只想替換一部分,可以用到count
實例1:
a = re.sub(r'hello', 'i love the', 'hello world') print(a)<br data-filtered="filtered">'i love the world' #hello world里面的hello被 i love the替換
實例2:
>>> a = re.sub(r'(\d+)', 'hello', 'my numer is 400 and door num is 200') >>> a 'my numer is hello and door num is hello' #數(shù)字400 和 200 被hello替換
實例3:
a = re.sub(r'hello (\w+), nihao \1', r'emma','hello sherry, nihao sherry') >>> a 'emma' #\1代表第一個分組的值即sherry,因為有兩個sherry,所以用\1可以指代第二個,這樣整個字符串被emma替換
示例4:
>>> a = re.sub('(\d{4})-(\d{2})-(\d{2})', r'\2-\3-\1', '2018-06-07')
>>> a
'06-07-2018'
>>> a = re.sub('(\d{4})-(\d{2})-(\d{2})', r'\g<2>-\g<3>-\g<1>', '2018-06-07')
>>> a
'06-07-2018' #\2 和 \g<2> 指代的的都是前面的第二個分組
示例5:
import re
def replace_num(str):
numDict = {'0':'〇','1':'一','2':'二','3':'三','4':'四','5':'五','6':'六','7':'七','8':'八','9':'九'}
print(str.group())
return numDict[str.group()]
my_str = '2018年6月7號'
a = re.sub(r'(\d)', replace_num, my_str)
print(a) #每次匹配一個數(shù)字,執(zhí)行函數(shù),獲取替換后的值
和sub()函數(shù)一樣,只是返回的是一個tuple,替換后的字符串和替換的個數(shù)
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python目標(biāo)檢測基于opencv實現(xiàn)目標(biāo)追蹤示例
這篇文章主要為大家介紹了python基于opencv實現(xiàn)目標(biāo)追蹤示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
關(guān)于yolov8訓(xùn)練的一些改動及注意事項
Yolo是一種目標(biāo)檢測算法,目標(biāo)檢測的任務(wù)是從圖片中找出物體并給出其類別和位置,這篇文章主要給大家介紹了關(guān)于yolov8訓(xùn)練的一些改動及注意事項,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02
python使用redis模塊來跟redis實現(xiàn)交互
這篇文章主要介紹了python使用redis模塊來跟redis實現(xiàn)交互,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-06-06
PyQT5之使用QT?Designer創(chuàng)建基本窗口方式
這篇文章主要介紹了PyQT5之使用QT?Designer創(chuàng)建基本窗口方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02
Python實現(xiàn)刪除排序數(shù)組中重復(fù)項的兩種方法示例
這篇文章主要介紹了Python實現(xiàn)刪除排序數(shù)組中重復(fù)項的兩種方法,涉及Python數(shù)組元素的遍歷、判斷、刪除等相關(guān)操作技巧,需要的朋友可以參考下2019-01-01

