Parsing Strings in Enclosed in Curly Braces
Rhodri James
rhodri at wildebst.demon.co.uk
Fri May 15 18:18:14 EDT 2009
On Fri, 15 May 2009 17:12:24 +0100, <xamalek at yahoo.com> wrote:
> How do you parse a string enclosed in Curly Braces?
>
> For instance:
>
> x = "{ABC EFG IJK LMN OPQ}"
>
> I want to do x.split('{} ') and it does not work. Why does it not work
> and what are EXCEPTIONS to using the split method?
Other people have already done this bit :-)
> That I want to split based on '{', '}' and WHITESPACE.
This is not the same as what you first said, and I have a horrid feeling
you're trying to conflate two steps into one. That way lies madness.
First, a question. Is 'x' truly a good representation of your original
data? Could it instead look more like:
x = "Ignore this {but not this} and completely forget about this"
Can you have braces legitmately lying around in the string, escaped
somehow:
x = r"{Parse including the \} escaped close brace}"
Can you have nested braces, and what are you supposed to do with them:
x = "{Some text to parse {as well as an aside} and so on}"
Parsing is not an entirely trivial subject, particularly when users
can futz about with the strings you're parsing. That's one reason there
are so many lexers and parsers out there!
--
Rhodri James *-* Wildebeeste Herder to the Masses
More information about the Python-list
mailing list