关于python:使用替代分隔符拆分字符串

Split strings with alternative separators

本问题已经有最佳答案,请猛点这里访问。

打电话给string.split()时,我想换一个分隔符

1
2
3
>>> import string
>>> string.split('a n', ' ')
['a', 'n']

这是正确的。

1
2
3
4
>>> string.split('a n"c', '"')
['a n"c']
>>> string.split('a n"c', '[ |"]')
['a n"c']

理想的分割应该是['a', 'n', 'c']

1
2
3
4
>>> string.split('a n""c', '[ |"]')
['a n""c']
>>> string.split('a n""c', '"')
['a n"', 'c']

理想的分割应该是['a', 'n', 'c']

所以我想知道我该怎么做?


str.split()不是那么复杂,你想要的是re.split()而不是:

1
re.split(r'["]+', some_string)

演示:

1
2
3
>>> import re
>>> re.split(r'["]+', 'a n""c')
['a', 'n', 'c']