1. 程式人生 > 其它 >Python筆記:pandas之字串操作方法

Python筆記:pandas之字串操作方法

字串操作

字串物件方法

#python內建的字串函式
str.split()             #根據指定的字元分隔字串,返回一組分隔後列表
srt.strip()             #去除空白符(包括換行符)
'-'.join(list)          #將列表或元組裡的字串用‘-’拼接起來。
'a' in str              #判斷字串中是否包含'a'
str.index(',')          #返回字串所在的位置,如果找不到丟擲異常
str.find(',')           #返回字串第一次出現的位置,如果找不到返回-1
str.rfind('
,') #返回字串最後一次出現的位置,如果找不到返回-1 str.count(',') #返加子串出現的次數 str.replace(',','') #將字串中的','去除,如果第二個引數是指定的字元,則該函式變成替換模式

正則表示式

#正則表示式提供了一種靈活的在文字中搜索或匹配(通常比前者複雜)字串模式的方式
#正則表示式,常稱作regex,是根據正則表示式語言編寫的字串
#Python內建的re模組負責對字串應用正則表示式
#re模組的函式可以分為三個大類:模式匹配、替換以及拆分。

import re

#'\s+',描述一個或多個空白符
#呼叫re.split('\s+',text)時,正則表示式會先被編譯,然後再在text上呼叫其split方法 #可以用re.compile自己編譯regex以得到一個可重用的regex物件 #如果打算對許多字串應用同一條正則表示式,強烈建議通過re.compile建立regex物件,這樣將可以節省大量的cpu時間 re.split('\s+', text) regex = re.compile('\s+') regex.split(text) regex.findall(text) #找到所有匹配正則表示式的文字,返回一個列表 regex.search(text) #
返回文字中第一個匹配正則表示式的文字的起始和結束位置 regex.match(text) #只匹配在字串開頭的文字 regex.sub(',',text) #將匹配到的文字替換為',' #如果不僅想找出文字,還想將文字分成多個部分,只需將待分段的模式的各部分用圓括號包起來即可 pattern = r'([A-Z0-9._%+-]+)@([A-Z0-9.-]+)\.([A-Z]{2,4})' regex = re.compile(pattern) m = regex.match('[email protected]') m.groups() ('wesm','bright','net')