echo "foo foobar foobaz" | perl -Mre=eval -nle 'my $re = qr/(\b\w+\b)(?{ print "Y: $^N"; $^N =~ m@bar@ ? undef : "(?=.\\A)" })(??{ print STDERR "R: $^R"; $^R })/; print $re; my $x = m/$re/; $, = "\n"; print $x, $1, $y' echo $?