把某个字符串依据分隔符号拆分不同的字段,该字符串包含多种不同的分隔符
方法一:连续使用str.split()方法,每次处理一种分隔符号
1 # encoding=utf-8 2 3 def mySplit(s,ds): 4 res = [s] 5 6 for d in ds: 7 t = [] 8 map(lambda x:t.extend(x.split(d)),res) 9 res = t 10 11 return [x for x in res if x] #能够将符号连续的点去掉空字段 12 # return res 遇到连续符号时会返回空字段'' 13 14 if __name__ == "__main__": 15 s = 'ab;cd|efg|hi,,jkl|mn opq;rst,uvw xyz' 16 print mySplit(s,';,| ')
方法二:使用正则表达式的re.split()方法
import re
re.split(r'[;|, ]+',s)