pythonsub替換
1. python 查找字元串並將其替換
f1=open('J:/wenjian/1/1.txt','r')
for line in f1
你這里是不是少了點什麼,f1隻是文件句柄,需要執行讀操作才能遍歷,
調用readlines()
確實有更好的代碼,那就是使用re.sub,它同時包含了查找和替換兩步的操作,
而不是像你寫的那樣的字元串比較性能那麼低
2. Python 的sub和replace的區別
你好:
sub是正則表達式,他的功能更加強大;
而replace知識一個替換;
inputStr = "hello 123 world 456"
而你想把123和456,都換成222,這時候replace就無能為力了!
3. Python姝e垯琛ㄨ揪寮忓備綍榪涜屽瓧絎︿覆鏇挎崲
re.sub()
4. 趣玩Python第16關:3個技巧掌握正則
字元串的匹配查詢
Python中的re模塊中的findall函數可以對指定的字元串進行遍歷匹配,如下:
findall(pattern, string, flags=0)
pattern:指定需要匹配的正則表達式。
string:指定待處理的字元串。
flags:指定匹配模式,常用的值可以是re.I、re.M、re.S和re.X。re.I的模式是讓正則表達式對大小寫不敏感;re.M的模式是讓正則表達式可以多行匹配;re.S的模式指明正則符號.可以匹配任意字元,包括換行符 ;re.X模式允許正則表達式可以寫得更加詳細,如多行表示、忽略空白字元、加入注釋等。
字元串的匹配替換
re模塊中的sub函數的功能是替換,類似於字元串的replace方法,該函數根據正則表達式把滿足匹配的內容替換為repl,如下:
sub(pattern, repl, string, count=0, flags=0)
pattern:同findall函數中的pattern。
repl:指定替換成的新值。
string:同findall函數中的string。
count:用於指定最多替換的次數,默認為全部替換。
flags:同findall函數。
字元串的匹配分割
re模塊中的split函數是將字元串按照指定的正則表達式分隔開,類似於字元串的split,如下:
split(pattern, string, maxsplit=0, flags=0)
pattern:同findall函數中的pattern。
maxsplit:用於指定最大分割次數,默認為全部分割。
string:同findall函數中的string。
flags:同findall函數中的flags。
以上就是本次分享的全部內容了,不知大家對我講述的Python正則表達式妙用感覺怎麼樣?
腦筋急轉彎:有人想喝點牛奶解渴,卻一命嗚呼了,為什麼?
5. 姝e垯琛ㄨ揪寮忛珮綰ф浛鎹錛屽尮閰嶅悗榪涜岃繍綆楋紝鐒跺悗浣跨敤緇撴灉鏇挎崲錛屾庝箞瀹炵幇錛
浣犵殑瑕佹眰鍙浠ョ敤php璇璦鎴朠ython璇璦瀹炵幇,鍥犱負瀹冧滑鐨刾reg_replace_callback(Python鐢╯ub)鍑芥暟鍙傛暟涓鍙浠ヤ嬌鐢ㄥ洖璋冨嚱鏁,
榪欐牱瀵瑰勭悊浣犳彁鐨勯棶棰樻瘮杈冪畝渚,鍏跺畠璇璦涔熷彲浠ュ勭悊,浣嗗氨姣旇緝楹葷儲.鎸夌収浣犵殑瑕佹眰緙栧啓鐨凱ython紼嬪簭濡備笅
import re
def fun(matches):
return matches[1]+str(eval(matches[2]))
s="adfadfd,lat:12+2,lng:34+1,fdsfdsaf"
regex='(lat:|lng:)([0-9]+([+-][0-9]+)?)'
result=re.sub(regex,fun,s,re.I)
print(result)
婧愪唬鐮(娉ㄦ剰婧愪唬鐮佺殑緙╄繘)
6. 如何用python的re.sub( )方法進行「多處」替換
正則表達式里 或 是 |
importre
s0='BOYandGIRL'
s1=re.sub(r'BOY|GIRL','HUMAN',s0)
prints1
#HUMANandHUMAN
7. python語言去除文本中的p標簽
用Python語言的sub()函數替換就可以實現你的目標
具體程序如下(假設你每次從文件中讀取一行,放在line變數中)
importre
line='<p>寧波大學</p>'
regex=r'</?p>'
result=re.sub(regex,"",line,re.I)
print(result)