my @array = ( "hello 1234 5698 7458", "hi 1457 7459 6214", "good_day 1458", "hi 1258 3658", "good_morning 4758", "hi 1453", ); my %indexedArray; my $key; foreach (@array) { $key = (split())[0]; if ( defined $indexedArray{$key} ) { $indexedArray{$key} = ''; } else { $indexedArray{$key} = $_; } } @array = grep(/.+/,values(%indexedArray));