SPUG: passing in a reg exp as a string, then interpolating
Joel
largest at largest.org
Fri Jun 9 15:18:35 CDT 2000
On Fri, 9 Jun 2000, Christopher Cavnor wrote:
> does anyone know how to pass a regular expression into a script (in my
> case, from an HTML form) and then evaluate the expression?
>
> I am passing in a reg exp (like "/^hello/ ")as a string and grabbing
> it (my $regexp = /^hello/ ), and then trying to interpolate:
>
> push @results, $k if do{ $k =~ @{[ $regexp ]};
>
> Doesn't seem to be working. Any tricks for doing this?
You could use 'eval':
#!/usr/local/bin/perl
use strict;
my @results;
my $regex = '/^hello/';
my $test = 'hello world';
push @results, $test if ( $test =~ eval $regex );
print "@results\n"; # prints "hello world\n";
__END__
Joel
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list at pm.org PROBLEMS: owner-spug-list at pm.org
Seattle Perl Users Group (SPUG) Home Page: http://www.halcyon.com/spug/
For Subscriptions, Email to majordomo at pm.org: ACTION spug-list EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email address
More information about the spug-list
mailing list