sub mksub (&) { my $sub = shift; return sub { local( $_ ) = $_[0]; $sub->(); $_[0]=$_ }; } %regexes = ( first => mksub { s/(\w+) (\w+) (\w+)/$1 $3/ }, second => mksub { s/and so on/and on/ }, ); my $string = "big hairy mess"; for my $re ( keys %regexes ) { $regexes{ $re }->( $string ); print "$re: $string\n"; }
In reply to Re: Storing substitution patterns
by Fletch
in thread Storing substitution patterns
by abulafia
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |