in reply to Iterating over code embeded in regex
Don't use lexicals in code embedded in regexp. Use package variables.
my @letters = ('a'..'z'); for our $letter (0..$#letters) { $letters[$letter] =~ /(?{ print $letter })(?!)/; } [download]