最近工作太忙,没时间写心得 - -!,趁着七夕赶紧来一发:
拆分含有多个分隔符的字符串(还是经常用到的)
两种方法分割字符串:
1.split 切分
def mySplit(s,ds):
#s 源字符串 ds 分隔符
res =[s]
for d in ds :
t=[]
map(lambda x:t.extend(x.split(d)),res)
res = t
return res
res =mySplit(s,',#| ;&')
通过每次指定一个分隔符 来拆分字符串, 新生成的二维列表再重新拆分 这个方法比较麻烦
推荐用正则拆分:
2. re.split()
s ='skdasjkh#hlka,asda|as dsa,dasd&dalksj;asdasa'
re.split(r'[,#| ;& ]+',s)
#'[]' 指明多个分隔符 + 是多个
In [4]: s ='skdasjkh#hlka,asda|as dsa,dasd&dalksj;asdasa'
In [5]: re.split(r'[,#| ;& ]+',s)
Out[5]: ['skdasjkh', 'hlka', 'asda', 'as', 'dsa', 'dasd', 'dalksj', 'asdasa']
用正则比较爽 哈哈哈