See below. Beau E. Cox wrote: > Hi - > >> From: R. Joseph Newton [mailto:[EMAIL PROTECTED]] >> Subject: Re: Removing duplicates from an array >> >> Troy May wrote: >> >>> Hello, >>> >>> What's the best and cleanest way to remove duplicates from an array? I >>> have an array that reads entries from a text file and I would like to >>> remove all the duplicates from it. >>> >>> Thanks in advance! >>> >>> Troy >> >> I'd say prevention is the best cure. Check for duplicates as you read. >> > > Yes prevention is prob the best way. > But if you must remove dups anyway: > > ...@array_with_dups in the input array... > my %temp_hash; > $temp_hash{$_} = 1 for (@array_with_dups); > my $array_without_dups = (); > push @array_without_dups, $_ for (keys %temp_hash); > > The downside is that thr array order will be messed up... > You can sort it: ... for (sort keys ...
Or, if you want to preserve ordering, you could handle it as you read the file. my %temp_hash; my $array_without_dups = (); while (<file>) { chomp; if ($temp_hash{$_} == 0) { $temp_hash{$_} = 1; push(@array_without_dups, $_); } } -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]