I have a program that needs to split lines that are of the format:
IDNumber Firstname Lastname GPA Credits
but I want to keep
If you want to split by any whitespace, you can use str.split:
mystr.split()
# ['IDNumber', 'Firstname', 'Lastname', 'GPA', 'Credits']
For two or more spaces:
list(filter(None, mystr.split(' ')))
# ['IDNumber', 'Firstname Lastname', 'GPA', 'Credits']
Use regex to split on two or more spaces:
>>> re.split(r" {2,}", s)
['IDNumber', 'Firstname Lastname', 'GPA', 'Credits']
If you want to split on two or more white-space characters generally, then use:
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']