http://www.perlmonks.org?node_id=103846


in reply to Re: Re: Applying a RegEx in a variable
in thread Applying a RegEx in a variable

let`s keep dangerous content of the eval out of this...

I want to eval the expression whilst retaining information on the special
RegEx vars ($1..n, $&,$`,$', etc, etc) It really SHOULD be possible

I`m actually very close to printing the regex to a file, run the file as a Perl
program, let it print the vars to another file, and read them back into the
parent.... Now that`s what I call desperation....

GreetZ!,

print "profeth still\n" if /bird|devil/;

Replies are listed 'Best First'.
Re4: Applying a RegEx in a variable
by Hofmator (Curate) on Aug 10, 2001 at 16:37 UTC

    Well, you can always do it the qr// way (this is better anyway if you are using the same regex more than once). Or you can do it along these lines:

    my $match; eval "\$String =~ $RegEx"; \$match = \$&"; print $match;
    The code executed within the eval has access to the variables outside - again it works the same way as if the evaluated code was in a code block of its own.

    -- Hofmator