本文摘自php中文网,作者anonymity,侵删。
如何使用不同分隔符切分字符串,把某个字符串依据分隔符拆分,该字符包含不同的多种分隔符,如下s = '12;;7.osjd;.jshdjdknx+' 其中 ; . + 是分隔符
有哪些解决方案?

方法1:通过str.split()方法,每次处理一个分隔符
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | #!/usr/bin/python3
def go_split(s, symbol):
result = [s]
for i in symbol:
median = []
# 普通方法
# for x in result:
# median.extend(x.split(i)
# 列表解析
# [median.extend(y.split(i)) for y in result if y]
# map高阶函数,map生成可迭代对象
for z in map(lambda x: x.split(i), result):
median.extend(z)
# 以上三个方法都可以解决问题
result = median
# 去除空字符串
return [x for x in result if x]
if __name__ == "__main__" :
# 定义初始字符串
s = '12;;7.osjd;.jshdjdknx+'
# 定义分隔符
symbol = ';./+'
result = go_split(s, symbol)
print (result)
|
方法2:通过re.split()方法,一次性拆分所有字符串,推荐
阅读剩余部分
相关阅读 >>
Python怎么获取二维矩阵的单行每列最大值
什么是字符串?(2)转义字符与运算符
Python 解决中文写入excel时抛异常的问题
Python生成器与迭代器的区别
Python怎么取消注释
Python的format函数是什么意思
学习Python使用自定义钉钉机器人的示例代码
Python能在苹果手机上运行吗
Python怎么读取文件内容
Python变量为什么不能以数字开头
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » 如何使用不同分隔符切分字符串