代表前面pattern里面第一個分組,可以簡寫為\1,\g<0>代表前面pattern匹配到的所有字符串。count是patte" />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

python字符串替換re.sub()方法解析

系統(tǒng) 2172 0

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)
            
'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í)有所幫助,也希望大家多多支持腳本之家。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 天门市| 维西| 黄冈市| 灵宝市| 德钦县| 扶风县| 西吉县| 紫阳县| 渑池县| 怀仁县| 牟定县| 屏东市| 繁昌县| 龙州县| 黑河市| 新化县| 额济纳旗| 大关县| 瑞金市| 平塘县| 融水| 定州市| 洛阳市| 隆安县| 米泉市| 太仆寺旗| 克山县| 平昌县| 嘉黎县| 西平县| 沙洋县| 洞头县| 龙泉市| 汽车| 惠水县| 溆浦县| 徐水县| 西畴县| 额尔古纳市| 大方县| 宁海县|