#!/usr/bin/perl use strict; use warnings; my @arr = ( [ "1", "Smith", "Ric" ], [ "1", "Smith", "Rich" ], [ "1", "abc", "A" ], [ "1", "cdeQ", "C Sr" ], [ "1", "ghi", "G" ], [ "2", "cdeQ", "C Sr" ], [ "3", "ghi", "G" ], [ "3", "abc", "A" ], [ "3", "Smith", "Ric" ], [ "4", "cde", "C" ], [ "5", "cde", "C" ], [ "5", "xyz123", "X" ], [ "5", "cdeQ", "C II" ], [ "5", "Smith", "Rich" ] ); # callno lname fi (repeat 3 data points for each FF at each callno) my @arr2 = ( [ "1", "S", "01/05", "04" ], [ "2", "EMS", "01/05", "07" ], [ "3", "VF", "01/05", "11" ], [ "4", "S", "01/05", "13" ], [ "5", "B", "01/05", "17" ] ); # callno type date hr (repeat 4 data points for each incident) my $seen; for my $arr2 (@arr2) { if ( $arr2->[3] ) { # ie, if there's a complete call record print "@$arr2\n"; $seen = $arr2->[0]; print "\tDEBUG: My \$seen: $seen\n\n"; } for my $arr (@arr) { if ( ( $arr->[0] ) && ( $seen == $arr->[0] ) ) { print "@$arr\n"; } } print "\n\t\tFF Array exhausted for Callno $seen\n"; next; } print "\n\t\t No more calls\n";