regular expression for space seperated quoted string
Padraig Brady
Padraig at Linux.ie
Wed Sep 11 07:35:11 EDT 2002
Padraig Brady wrote:
> Hi, I'm trying to split a string that is seperated
> by spaces and also contains double quoted words which
> can contain spaces:
>
> For e.g. using: re.split('[ ]*"?([^"]*)"?[ ]*', s1)
> on this string: s1='1 "2" "thre e"'
> gives: ['', '1 ', '', '2', '', 'thre e', '']
>
> Problem with this is the '' entries, but this isn't too bad.
>
> However using the above re with: s2='1 2 "th ree"'
> I get: ['', '1 2 ', '', 'th ree', '']
>
> any ideas?
Well this one does better:
re.split('[ ]+|"([^"]*)"', string)
It does leave '' and None entries in the list,
but I can remove these easily.
I presume there is something more elegant.
Pádraig.
More information about the Python-list
mailing list