foreach my $val (@vals) { @flds = something to do with $val; my $go_ahead; foreach my $check (@flds[9..13]) { if ($check) { $go_ahead = 1; last; } } if ($go_ahead) { &add_sub (); print "\n"; } }