Can I use Perl regular expressions to match balanced text? Although Perl regular expressions are more powerful than "mathematical" regular expressions because they feature conveniences like backreferences ("\1" and its ilk), they still aren't powerful enough--with the possible exception of bizarre and experimental features in the development-track releases of Perl. You still need to use non-regex techniques to parse balanced text, such as the text enclosed between matching parentheses or braces, for example. An elaborate subroutine (for 7-bit ASCII only) to pull out balanced and possibly nested single chars, like "`" and "'", "{"and "}", or "(" and ")" can be found in http://www.perl.com/CPAN/authors/id/TOMC/scripts/pull_quot +es.gz The C::Scan module from CPAN contains such subs for internaluse, but they are undocumented.
Further information can be found in perldoc -q How do I remove HTML which despite the name, is directly applicable to XML.
Regards,
Helgi Briem
helgi AT decode DOT is
In reply to Re: Balanced delimiter parsing
by helgi
in thread Balanced delimiter parsing
by moxliukas
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |