You could use regular expressions... it's an FSM of some kind but it's
faster *g*
check this snippet out:

def mysplit(s):
        pattern = '((?:"[^"]*")|(?:[^ ]+))'
        tmp = re.split(pattern, s)
        res = [ifelse(i[0] in ('"',"'"), lambda:i[1:-1], lambda:i) for i in
tmp if i.strip()]
        return res

>>> mysplit('foo bar "baz foo" bar "baz"')
['foo', 'bar', 'baz foo', 'bar', 'baz']

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to