DB<10> @h{1..26} = a..z DB<11> use List::Util qw/pairgrep/ DB<12> x pairgrep { $b =~ /[aeiou]/ } %h 0 15 1 'o' 2 21 3 'u' 4 9 5 'i' 6 5 7 'e' 8 1 9 'a' DB<13> use List::Util qw/pairmap/ DB<14> x pairmap { $b =~ /[aeiou]/ ? [$a => $b] : () } %h 0 ARRAY(0x349eed8) 0 15 1 'o' 1 ARRAY(0x349ef20) 0 21 1 'u' 2 ARRAY(0x349ef80) 0 9 1 'i' 3 ARRAY(0x349efe0) 0 5 1 'e' 4 ARRAY(0x349f040) 0 1 1 'a' DB<15>