in reply to Indexing multiplicate firstnames with regex
This doesn't preserve the ordering, though.#!/usr/bin/perl use strict; use warnings; my %first; while ( <DATA> ) { chomp; my ($fn,$ln) = split; push @{$first{$fn}}, $ln; } for my $fn ( keys %first ) { my @ln = @{$first{$fn}}; if ( @ln == 1 ) { print $fn,' ',$ln[0],"\n"; } else { my $c = 1; print $fn,$c++,' ',$_,"\n" for @ln; } } __DATA__ George Fortran Jessi Heavens Bill Clinton Barack Obama Bill Gates Steve Jobs Bill Green George Bush
|
|---|