字符串操作
字符串对象方法
#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')