字符串切割成列表:
以str为分隔符切片mystr,如果maxsplit有指定值,则仅分割maxsplit个字符串,得到maxsplit个字符串的列表
利用字符串的split() 方法
>>>mystr = "my name is duizhang"
>>>ll = mystr.split(" ") #以空格为分隔符
>>>print(ll) # ['my','name','is','duizhang']
1 其中mystr 可以是正则表达式
>>> import re
>>> pattern = re.complite(" ") # 空格
>>> res = pattern.split('my name is duizhang')
>>> print(res) # ['my','name','is','duizhang']
2 运用正则的另一张表达方法:
>>>import re
>>> pattern = " "
>>> res = re.split(pattern, 'my name is duizhang')
>>>print(res)
对字符串内容进行替换 字符串的replice() 正则的sub()
运用字符串的replace()方法 把mystr中的str1替换成str2 如果count指定 则替换不超过count次
格式:mystr.replace(str1, str2, mystr.count(str1))
>>>mystr = 'my name is duizhang'
>>>mystr.replace('duizhang', 'xiaoma')
>>>print(mystr) # my name is xiaoma
运用正则 sub()方法
格式1:pattern.sub(repl, string[, count])
其中,reql可以是字符串 也可是函数
- 如果reql是字符串,则会使用reql去替换字符串中的每一个匹配到的子串,并返回替换后的字符串,另外 reql也可使用id的形式来引用分组 但不能使用编号0
- 如果reql是函数 这个方法应当只接受一个参数(Match对象) 并返回一个字符串用于替换(返回的字符串不能再引用分组)
- count用于制定替换次数 默认全部替换
>>> import re
>>>pattern = re.complite('duizhang')
>>>reql = 'xiaoma'
>>>res = pattern.sub(reql, mystr)
>>>print(res)
格式2:re.sub(pattern, req, string, max)
第一个参数是正则表达式或要替换的子串 第二个参数是要替换成的字符串 第三个参数是源字符串 max最大替换次数
>>>import re
>>>mystr = 'my name is duizhang'
>>>pattern = 'duizhang'
>>> res = re.sub(pattern, 'xiaoma', mystr)
>>>print(res) # 结果my name is xiaoma