use strict; use warnings; my %triggers; @triggers{qw(bodi forc twice mass acceler law)} = (1); my @UnNum = ( [35, [qw(forc two bodi twice strong on bodi sai bodi mass)]], [39, [qw(you expect on think new bodi made two bodi origin)]], [60, [qw(attract bodi b origin force)]], [46, [qw(total forc b twice origin force)]], [34, [qw(sai on bodi twice mass three time mass forc six)]], [17, [qw(on now see why bodi fall same rate bodi twice)]], ); for (@UnNum) { my $count = \$_->[0]; exists $triggers{$_} && ++$$count for @{$_->[1]}; } print join "\n", map {"$_->[0]: " . join ' ', @{$_->[1]}} @UnNum;