debian man page for regexp::reggrp

Query: regexp::reggrp

OS: debian

Section: 3pm

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

Regexp::RegGrp(3pm)					User Contributed Perl Documentation				       Regexp::RegGrp(3pm)

NAME
Regexp::RegGrp - Groups a regular expressions collection
VERSION
Version 1.002
DESCRIPTION
Groups regular expressions to one regular expression
SYNOPSIS
use Regexp::RegGrp; my $reggrp = Regexp::RegGrp->new( { reggrp => [ { regexp => '%name%', replacement => 'John Doe', modifier => $modifier }, { regexp => '%company%', replacement => 'ACME', modifier => $modifier } ], restore_pattern => $restore_pattern } ); $reggrp->exec( $scalar ); To return a scalar without changing the input simply use (e.g. example 2): my $ret = $reggrp->exec( $scalar ); The first argument must be a hashref. The keys are: reggrp (required) Arrayref of hashrefs. The keys of each hashref are: regexp (required) A regular expression replacement (optional) Scalar or sub. A replacement for the regular expression match. If not set, nothing will be replaced except "store" is set. In this case the match is replaced by something like sprintf("x01%dx01", $idx) where $idx is the index of the stored element in the store_data arrayref. If "store" is set the default is: sub { return sprintf( "x01%dx01", $_[0]->{store_index} ); } If a custom restore_pattern is passed to to constructor you MUST also define a replacement. Otherwise it is undefined. If you define a subroutine as replacement an hashref is passed to this subroutine. This hashref has four keys: match Scalar. The match of the regular expression. submatches Arrayref of submatches. store_index The next index. You need this if you want to create a placeholder and store the replacement in the $self->{store_data} arrayref. opts Hashref of custom options. modifier (optional) Scalar. The default is 'sm'. store (optional) Scalar or sub. If you define a subroutine an hashref is passed to this subroutine. This hashref has three keys: match Scalar. The match of the regular expression. submatches Arrayref of submatches. opts Hashref of custom options. A replacement for the regular expression match. It will not replace the match directly. The replacement will be stored in the $self->{store_data} arrayref. The placeholders in the text can easily be rereplaced with the restore_stored method later. restore_pattern (optional) Scalar or Regexp object. The default restore pattern is qr~x01(d+)x01~ This means, if you use the restore_stored method it is looking for x010x01, x011x01, ... and replaces the matches with $self->{store_data}->[0], $self->{store_data}->[1], ...
EXAMPLES
Example 1 Common usage. #!/usr/bin/perl use strict; use warnings; use Regexp::RegGrp; my $reggrp = Regexp::RegGrp->new( { reggrp => [ { regexp => '%name%', replacement => 'John Doe' }, { regexp => '%company%', replacement => 'ACME' } ] } ); open( INFILE, 'unprocessed.txt' ); open( OUTFILE, '>processed.txt' ); my $txt = join( '', <INFILE> ); $reggrp->exec( $txt ); print OUTFILE $txt; close(INFILE); close(OUTFILE); Example 2 A scalar is requested by the context. The input will remain unchanged. #!/usr/bin/perl use strict; use warnings; use Regexp::RegGrp; my $reggrp = Regexp::RegGrp->new( { reggrp => [ { regexp => '%name%', replacement => 'John Doe' }, { regexp => '%company%', replacement => 'ACME' } ] } ); open( INFILE, 'unprocessed.txt' ); open( OUTFILE, '>processed.txt' ); my $unprocessed = join( '', <INFILE> ); my $processed = $reggrp->exec( $unprocessed ); print OUTFILE $processed; close(INFILE); close(OUTFILE);
AUTHOR
Merten Falk, "<nevesenin at cpan.org>"
BUGS
Please report any bugs or feature requests through the web interface at http://github.com/nevesenin/regexp-reggrp-perl/issues <http://github.com/nevesenin/regexp-reggrp-perl/issues>.
SUPPORT
You can find documentation for this module with the perldoc command. perldoc Regexp::RegGrp COPYRIGHT &; LICENSE Copyright 2010, 2011 Merten Falk, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.14.2 2012-02-18 Regexp::RegGrp(3pm)
Related Man Pages
ppi::token::regexp(3) - mojave
ppi::token::regexp(3) - centos
ppi::token::regexp(3) - osx
ppix::regexp::structure::main(3) - centos
regexp::reggrp(3pm) - debian
Similar Topics in the Unix Linux Community
for i in `cat myname.txt` &amp;&amp; for y in `cat yourname.txt`
Regular Expressions in If clause
Perl line count if it matches a pattern
perl regular expression deal with $
Match and subtract two fields