for (grep /^default_option_/, keys %def) { my (undef, $option) = split /_/, $_, 2; $s{$option} = $def{$_}; } #### my @keys = grep /^default_option_/, keys %def; my @short_keys = map +(split /_/, $_, 2)[1], @keys; @s{@short_keys} = @def{@keys};