my %subst; $subst{$_}++ for qw/foo bar baz/; s/(\w+)/$subst{$_} ? subst($1) : $1/ge;