首页 > 其他 > 详细

如何拆分含有多种分隔符的字符串

时间:2019-11-20 19:53:01      阅读:57      评论:0      收藏:0      [点我收藏+]

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

s = 'ab;cd|efg|hi,jkl|mn\topq;rst,uvw\txyz'
def my_split(s, seps):
    res = [s]
    for sep in seps:
        t = []
        list(map(lambda ss: t.extend(ss.split(sep)), res))
        res = t
    return res

#reduce + split
from functools import reduce
my_split2 = lambda s, seps: reduce(lambda l, sep: sum(map(lambda ss: ss.split(sep), l), []), seps, [s])
my_split2(s, ',;|\t')

执行结果:

['ab', 'cd', 'efg', 'hi', 'jkl', 'mn', 'opq', 'rst', 'uvw', 'xyz']

方法2:使用正则表达式的re.split()方法(推荐)

s = 'ab;cd|efg|hi,jkl|mn\topq;rst,uvw\txyz'
import re
re.split('[;,|\t]+', s)

执行结果:

['ab', 'cd', 'efg', 'hi', 'jkl', 'mn', 'opq', 'rst', 'uvw', 'xyz']

如何拆分含有多种分隔符的字符串

原文:https://www.cnblogs.com/huowuyan/p/11899904.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!