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('wesm@bright.net')
m.groups()
('wesm','bright','net')


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM