python使用re進行字串查詢和替換

2021-08-16 03:35:22 字數 1160 閱讀 1284

函式

說明re.match(pat, s)

只從字串s的頭開始匹配,比如(『123』, 『12345』)匹配上了,而(『123』,』01234』)就是沒有匹配上,沒有匹配上返回none,匹配上返回matchobject

re.search(pat, s)

從字串s的任意位置都進行匹配,比如(『123』,』01234』)就是匹配上了,只要s只能存在符合pat的連續字串就算匹配上了,沒有匹配上返回none,匹配上返回matchobject

re.sub(pat,newpat,s)

對字串中s的包含的所有符合pat的連續字串進行替換,如果newpat為str,那麼就是替換為newpat,如果newpat是函式,那麼就按照函式返回值替換。sub函式兩個有預設值的引數分別是count表示最多隻處理前幾個匹配的字串,預設為0表示全部處理;最後乙個是flags,預設為0

# coding=utf-8

import re

s='1中文中文:123456aa哈哈哈bbcc'.decode('utf8')

print re.match(u"[\u4e00-\u9fa5]+",s) # none. 只從字串的開始匹配,沒有匹配上返回none,否則返回matchobject

pat='中文'.decode("utf8")

print re.search(pat,s).group() # matchobject. 對整個字串進行匹配,,沒有匹配上返回none,否則返回matchobject

newpat='這裡是中文內容'.decode("utf8")

news=re.sub(pat,newpat,s)

# 正則部分替換,將s中的所有符合pat的全部替換為newpat,newpat也可以是函式

print news

defnewpat_func

(matched):

return

"這裡是".decode('utf-8') + matched.group() + u"內容"

print re.sub(pat, newpat_func, s)

在python字串中使用中文,參考python中的編碼 encode decode setdefautendcoding write print

python 字串匹配 正則 re

1.re.match 嘗試從字串的起始位置匹配乙個模式,如果不是起始位置匹配成功的話,match 就返回none。import re content 123i love 123 you pattern r 123 res re.match pattern,content print res prin...

Python 字串使用

1 字串取字元 2 字串長度 3 字串拼接 4 字串切片 字串中的每乙個字元都有對應的下標 index 從0開始。e.g.hello world 0 h hello world 2 l hello world 10 d e.g.hello world 11 traceback most recent...

python 字串使用

lower 將大寫字母全部轉為小寫字母。如 name g b name.lower title 將字串轉化為標題,即所有單詞的首字母大寫,其他字母小寫。使用方法同lower replace 返回某字串的所有匹配項均被替換之後得到的字串。this is a test replace is are sp...