4

有没有办法在 Python 中使用多个分隔符而不是一个分隔符来拆分字符串?split似乎只接受一个参数作为分隔符。

另外,我无法导入re模块。(这确实是主要的绊脚石。)

关于我应该如何做的任何建议?

谢谢!

4

2 回答 2

9

为了在多个序列上拆分,您可以简单地用一个序列替换您需要拆分的所有序列,然后在那个序列上拆分。

所以

s = s.replace("z", "s")
s.split("s")

将在 s 和 z 上分裂。

于 2012-10-29T19:54:33.700 回答
1

Generic approach for a list of splitters, please, someone can write this with less code?

Initializing vars:

>>> splits = ['.', '-', ':', ',']
>>> s='hola, que: tal. be'

Splitting:

>>> r = [ s ]
>>> for p in splits:
...    r =  reduce(lambda x,y: x+y, map(lambda z: z.split(p), r ))

Results:

>>> r
['hola', ' que', ' tal', ' be']
于 2012-10-29T20:41:17.500 回答