my $subCode = "sub {"; $subCode.=(join "\n", map {'$_[0]=~s/'.$_.'/'.$iso8859{$_}.'/g;'} keys %iso8859); $subCode.="}"; print "$subStr\n"; my $sub=eval $subStr; $sub->($string);