Python 重新拆分 : how to preserve patten

标签 python

在 python 中的代码是:

list = "a123,145B,12"
re.split("[a-zA-Z_]",list)

结果:

['', '123,145', ',12']

我怎样才能保留字符,所以结果将是:

['a','123,145','B',',12']

最佳答案

您可以使用捕获组:

>>> re.split("([a-zA-Z_])",li)
['', 'a', '123,145', 'B', ',12']

为了过滤掉空字符串,你可以使用 filter 内置函数:

>>> filter(bool,re.split("([a-zA-Z_])",li))
['a', '123,145', 'B', ',12']

关于Python 重新拆分 : how to preserve patten,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30855294/

相关文章:

python - 优化查找可以比较的数组对

python - 如何在python中替换列表中的字符

python - 计算FFT频率分量的功率

Python 禁用/重定向键盘输入

python - 在 pandas 中过滤、分组和计数?

python - 在 OOP Python tkinter 中的多个类中使用具有相同参数的一个函数的最佳方法是什么

python - 为什么我不能在创建列表后立即对其进行排序?

python - Tensorflow:AttributeError: 'function' 对象没有属性 'graph'

python - 为不同用户的情绪分配不同的权重并在地理空间分析中显示

python - 基于数字从python列表中删除元素