拆分多个空间?

时间:2018-02-21 23:15:33

标签: python split

我有一个程序需要拆分格式为

的行
IDNumber      Firstname Lastname    GPA      Credits

但我想将FirstnameLastname保留在同一个字符串中。

有没有简单的方法可以做到这一点(除了只分成五个字符串而不是四个字符串)并且某种方式只有在有多个空格时才拆分拆分方法?

2 个答案:

答案 0 :(得分:4)

使用正则表达式拆分两个或多个空格

>>> re.split(r" {2,}", s)
['IDNumber', 'Firstname Lastname', 'GPA', 'Credits']

如果您想分割两个或更多空白字符,请使用:

re.split(r"\s{2,}", s)

e.g:

>>> s = "hello, world\t\tgoodbye cruel world"
>>> print(s)
hello, world        goodbye cruel world
>>> re.split(r"\s{2,}", s)
['hello, world', 'goodbye cruel world']

答案 1 :(得分:2)

如果要按任何空格分割,可以使用str.split

mystr.split()

# ['IDNumber', 'Firstname', 'Lastname', 'GPA', 'Credits']

对于两个或更多空格:

list(filter(None, mystr.split('  ')))

# ['IDNumber', 'Firstname Lastname', 'GPA', 'Credits']