小编典典

在Python中分割空格未知的字符串作为分隔符

python

我需要一个类似于的函数,str.split(' ')但可能会有多个空格,并且有意义的字符之间的空格数也不相同。像这样:

s = ' 1234    Q-24 2010-11-29         563   abc  a6G47er15        '
ss = s.magic_split()
print(ss)  # ['1234', 'Q-24', '2010-11-29', '563', 'abc', 'a6G47er15']

我可以以某种方式使用正则表达式来捕捉它们之间的空格吗?


阅读 240

收藏
2020-12-20

共1个答案

小编典典

如果您不向传递任何参数str.split(),它将把空格运行视为单个分隔符:

>>> ' 1234    Q-24 2010-11-29         563   abc  a6G47er15'.split()
['1234', 'Q-24', '2010-11-29', '563', 'abc', 'a6G47er15']

或者如果你想

>>> class MagicString(str):
...     magic_split = str.split
... 
>>> s = MagicString(' 1234    Q-24 2010-11-29         563   abc  a6G47er15')
>>> s.magic_split()
['1234', 'Q-24', '2010-11-29', '563', 'abc', 'a6G47er15']
2020-12-20