TOTAL AGE BRANCH 1982-05-08 1983-01-09
2 21 3999999 1 1
####
$array[0] = 'JHON 21 3999999 SCHOOL 1982-05-08';
$array[1] = 'JEFF 21 3999999 SCHOOL 1983-01-09';
####
$array[2] = 'JREK 18 1234567 LOUNGE 1980-01-01';
$array[3] = 'FOO 18 3456789 BAR 2000-10-10';
####
TOTAL AGE BRANCH 1980-01-01
1 18 1234567 1
TOTAL AGE BRANCH 2000-10-10
1 18 3456789 1
####
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper qw/Dumper/;
my @array;
$array[0] = 'JHON 21 3999999 SCHOOL 1982-05-08';
$array[1] = 'JEFF 21 3999999 SCHOOL 1983-01-09';
my $current = undef;
my $prev = undef;
my %filtered = ();
foreach my $_array (@array){
my @split = split(/\s/, $_array);
if (defined $filtered{$split[1]}{$split[4]})
{
substr($filtered{$split[1]}{$split[4]},0,1) = (++substr($filtered{$split[1]},0,1));
}
else {
$filtered{$split[1]}{$split[4]} = "1\t$split[1]\t$split[2]";
}
}
print Dumper( \%filtered );