亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

重新子

實(shí)戰(zhàn)過程中,我們很多時(shí)候需要替換字符串中的字符,這時(shí)候就可以用到 def sub(pattern, repl, string, count=0, flags=0) 函數(shù)了,re.sub 共有五個(gè)參數(shù)。其中三個(gè)必選參數(shù):pattern, repl, string ; 兩個(gè)可選參數(shù):count, flags .

具體參數(shù)意義如下:

參數(shù)描述
pattern表示正則中的模式字符串
repl?repl,就是replacement,被替換的字符串的意思
string?即表示要被處理,要被替換的那個(gè) string 字符串
count?對(duì)于pattern中匹配到的結(jié)果,count可以控制對(duì)前幾個(gè)group進(jìn)行替換
flags?正則表達(dá)式修飾符

具體使用可以看下下面的這個(gè)實(shí)例,注釋都寫的很清楚的了,主要是注意一下,第二個(gè)參數(shù)是可以傳遞一個(gè)函數(shù)的,這也是這個(gè)方法的強(qiáng)大之處,例如例子里面的函數(shù) convert ,對(duì)傳遞進(jìn)來要替換的字符進(jìn)行判斷,替換成不同的字符。

#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import re
a = 'Python*Android*Java-888'
# 把字符串中的 * 字符替換成 & 字符
sub1 = re.sub('\*', '&', a)
print(sub1)
# 把字符串中的第一個(gè) * 字符替換成 & 字符
sub2 = re.sub('\*', '&', a, 1)
print(sub2)
# 把字符串中的 * 字符替換成 & 字符,把字符 - 換成 |
# 1、先定義一個(gè)函數(shù)
def convert(value):
    group = value.group()
    if (group == '*'):
        return '&'
    elif (group == '-'):
        return '|'
# 第二個(gè)參數(shù),要替換的字符可以為一個(gè)函數(shù)
sub3 = re.sub('[\*-]', convert, a)
print(sub3)

輸出的結(jié)果:

Python&Android&Java-888
Python&Android*Java-888
Python&Android&Java|888
繼續(xù)學(xué)習(xí)
||
提交重置代碼