python的替換函式strip(),replace()和re.sub()例項分析
阿新 • • 發佈:2020-11-20
前記:
python是一個非常好用的語言,能夠幫忙處理很多日常的耗費體力的事情。今天做一個指令碼的時候,遇到了python替換的問題,這裡就梳理一下知識點吧。
概念:
1.replace()
基本用法:物件.replace(rgExp,replaceText,max)
其中,rgExp和replaceText是必須要有的,max是可選的引數,可以不加。
rgExp是指 String 物件或文字;replaceText是一個String 物件或字串文字;max是一個數字。對於一個物件,在物件的每個rgExp都替換成replaceText,從左到右最多max次。
2. re.sub
re.sub()有5個函式,三個必選引數pattern,repl,string;兩個可選引數count,flags
re.sub(pattern,repl,string,count)
pattern:表示正則表示式中的模式字串;
repl:被替換的字串(既可以是字串,也可以是函式);
string:要被處理的,要被替換的字串;
count:匹配的次數
3.strip()
strip()並不是一個真正意義上的替換函式,它是用來刪除一些字元的,所以我們可以把這看作是把字串中的一些字元替換成空(不是空格,是空。)
某些場景,strip()用起來很方便。
例項:
bytes是python中最常用的最基本的資料,這裡給出一個基於bytes的例項分析:
1 replace例項:
byte=b'\x01\x02\n\x03\x04\r\x05\x06' data=byte.replace(b'\n',b'') print("data is:") print(data) data1=data.replace(b'\r',b'') print("data1 is:") print(data1)
輸出結果:
data is: b'\x01\x02\x03\x04\r\x05\x06' data1 is: b'\x01\x02\x03\x04\x05\x06'
2 re.sub例項
例項:
import re byte=b'\x01\x02\n\x03\x04\r\x05\x06\n' data=re.sub(b'\n',b'',byte) print("data is:") print(data) data1=re.sub(b'\r',b'',data) print("data1 is:") print(data1)
輸出結果:
同上
3 strip()例項
byte=b'\n\x01\x02\n\x03\x04\r\x05\x06\r' data=byte.strip(b'\n') print("data is:") print(data) data1=data.strip(b'\r') print("data1 is:") print(data1) ~
輸出結果:
data is: b'\x01\x02\n\x03\x04\r\x05\x06\r' data1 is: b'\x01\x02\n\x03\x04\r\x05\x06'
這裡可以看出,strip同時去掉左右兩邊的過濾條件,中間的不會被刪除,這個要注意一下。
總結:
總結一下,下次就不會忘記了。