Regexp::Assemble

Regexp::Assemble is Perl module to assemble multiple Regular Expressions into a single RE.
Download

Regexp::Assemble Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • David Landgren
  • Publisher web site:
  • http://search.cpan.org/~dland/

Regexp::Assemble Tags


Regexp::Assemble Description

Regexp::Assemble is Perl module to assemble multiple Regular Expressions into a single RE. Regexp::Assemble is Perl module to assemble multiple Regular Expressions into a single RE.SYNOPSIS use Regexp::Assemble; my $ra = Regexp::Assemble->new; $ra->add( 'ab+c' ); $ra->add( 'ab+-' ); $ra->add( 'awd+' ); $ra->add( 'ad+' ); print $ra->re; # prints a(?:w?d+|b+)Regexp::Assemble takes an arbitrary number of regular expressions and assembles them into a single regular expression (or RE) that matches all that the individual REs match.As a result, instead of having a large list of expressions to loop over, a target string only needs to be tested against one expression. This is interesting when you have several thousand patterns to deal with. Serious effort is made to produce the smallest pattern possible.It is also possible to track the original patterns, so that you can determine which, among the source patterns that form the assembled pattern, was the one that caused the match to occur.You should realise that large numbers of alternations are processed in perl's regular expression engine in O(n) time, not O(1). If you are still having performance problems, you should look at using a trie. Note that Perl's own regular expression engine will implement trie optimisations in perl 5.10 (they are already available in perl 5.9.3 if you want to try them out). Regexp::Assemble will do the right thing when it knows it's running on a a trie'd perl. (At least in some version after this one).Requirements:· Perl Requirements: · Perl


Regexp::Assemble Related Software