1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 【Python教程】两种方法教你拆分含有多种分隔符的字符串

【Python教程】两种方法教你拆分含有多种分隔符的字符串

时间:2020-04-11 18:40:09

相关推荐

【Python教程】两种方法教你拆分含有多种分隔符的字符串

方法一:连续使用str.spilt()方法,每次处理一种分隔符;

str.split()方法的应用:按某一种分隔符分割字符串;

#不能用单词字符进行分割(字母、数字、下划线)

A、str.split()的用法

#此处是str.spilt(),而不是re.spilt()

s = 'ab, cd,; aef;,; gh;aij|kl|amb\t op\tqr's1 = s.split()#A、默认状态按空格进行分割;print(s1)#输出:['ab,', 'cd,;', 'aef;,;', 'gh;aij|kl|amb', 'op', 'qr']s2 = s.split(',')#B、按某一符号进行分割print(s2)#输出:['ab', ' cd', '; aef;', '; gh;aij|kl|amb\t op\tqr']

B、代码

'''学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!'''def mysplit(s, ds):res = [s]for d in ds:t = []#t.extend(x.split(d)):此处,extend将x.aplit(d)返回的结果的元素,添加到t中[t.extend(x) for x in map(lambda x: x.split(d), res)]res = t#去除空列表里的空字符串return [x for x in res if x]s = 'ab,cd,;aef;,;gh;aij|kl|amb\top\tqr'print(mysplit(s, ';,|\t'))#

方法二:使用正则表达式的re.split()方法,一次性拆分字符串(更快捷方便)

import res = 'ab,cd,;aef;,;gh;aij|kl|amb\top\tqr's1 = re.split('[,;|\t]*', s)#去除s1中的空字符串print([x for x in s1 if x])

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。