In the past weeks i've been thinking over the problem on the practical problems of regex in its matching power. For example, often it can't be used to match anything of nested nature, even the most simple nesting. It can't be used to match any simple grammar expressed by BNF. Some rather very regular and simple languages such as XML, or even url, email address, are not specified as a regex. (there exist regex that are pages long that tried to match email address though)
I wrote out a more elaborate account of my thoughts here: http://xahlee.org/cmaci/notation/pattern_matching_vs_pattern_spec.html ---------------- After days of researching this problem, looking into parsers and its theories etc, today i found the answer!! What i was looking for is called Parsing Expression Grammar (PEG). See http://en.wikipedia.org/wiki/Parsing_expression_grammar It seems to me it's already in Perl6, and there's also a implementation in Haskell. Is the perl6 PEG is in a usable state? Thanks. Xah [EMAIL PROTECTED] ∑ http://xahlee.org/ ☄ -- http://mail.python.org/mailman/listinfo/python-list