Thomas Liesner wrote:
> Hi all,
>
> i am having a textfile which contains a single string with names.
> I want to split this string into its records an put them into a list.
> In "normal" cases i would do something like:
>
>> #!/usr/bin/python
>> inp = open("file")
>> data = inp.read()
>> names = data.split()
>> inp.close()
>
> The problem is, that the names contain spaces an the records are also
> just seprarated by spaces. The only thing i can rely on, ist that the
> recordseparator is always more than a single whitespace.
>
> I thought of something like defining the separator for split() by using
> a regex for "more than one whitespace". RegEx for whitespace is \s, but
> what would i use for "more than one"? \s+?
>
> TIA,
> Tom
\s+ gives one or more, you need \s{2,} for two or more:
>>> import re
>>> re.split("\s{2,}","Guido van Rossum Tim Peters Thomas Liesner")
['Guido van Rossum', 'Tim Peters', 'Thomas Liesner']
>>>
Michael
--
http://mail.python.org/mailman/listinfo/python-list