c:\@Work\Perl>perl -wMstrict -MData::Dump -le "use Data::Dumper; ;; my @arr = ( [ 'A', 1, 0, 5, 6, 2 ], [ 'B', 3, 4, 5, 6, 7 ], [ 'C', 2, 4, 3, 5 ], [ 'D', 6, 7, 8, 8 ], [ 'E', 2, 5, 4, 5 ], [ 'F', 4, 3, 2, 2 ], [ 'G', 1, 2, 4, 5 ], [ 'H', 1, 4, 5, 6 ] ); ;; my @rows = grep { (@$_ > 2 && $_->[2] > 4) && (@$_ > 4 && $_->[4] > 3) } @arr ; dd \@rows; " [["D", 6, 7, 8, 8], ["E", 2, 5, 4, 5]]