Series.str.strip(self, to_strip=None)
刪除每個(gè)字符串左側(cè)、右側(cè)
中空格(包括換行符)或一組指定的字符快骗。
制表符 | 描述 |
---|---|
\t | 制表符 |
\n | 換行符 |
\n\t | 換行且行首空四格 |
\s | 空格 |
\r | 回車符 |
\t | 多見于正則表達(dá)式,\s匹配字符串中的\和s兩個(gè)字符,因?yàn)閈在正則中有特殊意義出吹,需要轉(zhuǎn)義,所以前面加上了一個(gè)轉(zhuǎn)義符\ |
- 參數(shù)
to_strip:str 或 None, 默認(rèn)為 None
指定要?jiǎng)h除的字符集辙喂。這組字符的所有組合都將被刪除捶牢。如果為None鸠珠,則將刪除空格。 - 返回值:Series
import pandas as pd
import numpy as np
data = pd.DataFrame([
[1,'1.張三.12523 565421!\n'],
[2,'2.李四.12345 125623@\r'],
[3,' 3.王五.152563 5632. \t'],
[4,'4.趙六.142 6236532?\n\t'],
[5,'5.田七.22 3 '],
[6,np.nan],
[7,'09235621 ']
],
columns =['ID','電話']
)
data
image.png
1.刪除左右空格以及\n\r\t
data['電話1']=data['電話'].str.strip()
image.png
注意:有沒有發(fā)現(xiàn)秋麸,中間的空格渐排、制表符是刪除不了的,只能刪除左右兩邊的V衩恪7膳琛娄琉!
2.刪除“電話”列 數(shù)字+.
data['電話1']=data['電話'].str.lstrip(' 1234567890.')
data
image.png
3.刪除“電話”列次乓!@.?等
data['電話1']=data['電話'].str.strip().str.strip('!@.?')
data
image.png
注:中間空格、\r\t\n是無法刪除的D跛F毖!
字符串str還有另外兩種類似的方法lstrip()和rstrip()女气。第一個(gè)是只刪頭杏慰,第二個(gè)是只刪尾巴。用法類似