my $lnum = 0; for my $line (@lines) { $line =~ /your regex/; my $date = $1; my $id = $2; my $keyword = $3; $urecs{$id} .= "$date,$id,$keyword \n"; } print $urecs{$urec} for my $urec (keys %urecs);