============================================================================== Release of version 1.76 of Text::Balanced ============================================================================== NAME Text::Balanced - Extract delimited text sequences from strings. SUMMARY (see Balanced.pod for full details) Text::Balanced::extract_delimited `extract_delimited' extracts the initial substring of a string which is delimited by a user-specified set of single-character delimiters, whilst ignoring any backslash-escaped delimiter characters. Text::Balanced::extract_bracketed `extract_bracketed' extracts a balanced-bracket-delimited substring (using any one (or more) of the user-specified delimiter brackets: '(..)', '{..}', '[..]', or '<..>'). Text::Balanced::extract_quotelike `extract_quotelike' attempts to recognize and extract any one of the various Perl quote and quotelike operators (see "perlop(3)"). Embedded backslashed delimiters, nested bracket delimiters (for the quotelike operators), and trailing modifiers are all correctly handled. Text::Balanced::extract_codeblock `extract_codeblock' attempts to recognize and extract a balanced bracket-delimited substring which may also contain unbalanced brackets inside Perl quotes or quotelike operations. That is, `extract_codeblock' is like a combination of `extract_bracketed' and `extract_quotelike'. Text::Balanced::extract_tagged `extract_tagged' attempts to recognize and extract a substring between two arbitrary "tag" patterns (a start tag and an end tag). INSTALLATION It's all pure Perl, so just put the .pm file in its appropriate local Perl subdirectory. AUTHOR Damian Conway (damian@cs.monash.edu.au) COPYRIGHT Copyright (c) 1997-2000, Damian Conway. All Rights Reserved. This module is free software. It may be used, redistributed and/or modified under the terms of the Perl Artistic License (see http://www.perl.com/perl/misc/Artistic.html) ============================================================================== CHANGES IN VERSION 1.76 - IMPORTANT: Now requires 5.005 or better. - IMPORTANT: Made extract methods sensitive to the pos() value of the text they are parsing. In other words, all extract subroutines now act like patterns of the form /\G.../gc. See documentation for details. - IMPORTANT: Changed semantics of extract_multiple, in line with the above change, and to simplify the semantics to something vaguely predictable. See documentation for details. - Added ability to use qr/../'s and raw strings as extractors in extract_multiple. See documentation. - Added fourth argument to extract_codeblock to allow outermost brackets to be separately specified. See documentation for details. - Reimplemented internals of all extraction subroutines for significant speed-ups (between 100% and 2000% improvement). - Fixed nasty bug in extract_variable and extract_codeblock (they were returning prefix as well in scalar context) - Allowed read-only strings to be used as arguments in scalar contexts. - Renamed delimited_pat to gen-delimited pat (in line with gen_extract_tagged). Old name still works, but is now deprecated. - Tweaked all extraction subs so they correctly handle zero-length prefix matches after another zero-length match. ============================================================================== AVAILABILITY Text::Balanced has been uploaded to the CPAN and is also available from: http://www.csse.monash.edu.au/~damian/CPAN/Text-Balanced.tar.gz ==============================================================================