I'm trying to write a script to remove duplicate e-mail addresses from a
list.
I'd like some help understanding...
1. Why does it remove all but one of the duplicate lines?
2. How can I fix it?
Thanks for any advice,
John
-------------------------------
#!/usr/bin/perl
use warnings;
use strict;
open ALLNAMES, "emails.txt" or die "File: infile failed to open: $!\n";
my @allnames = <ALLNAMES>;
my %seen = ();
my @unique = grep { ! $seen{ $_ }++ } @allnames;
print "@unique";
close ALLNAMES or die "cannot close infile";
-----------------------------------------
here's a small test file with fourteen lines, but only ten unique lines:
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
-------------------------------
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/