如何使用不同分隔符切分字符串


本文摘自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》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...