diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2020-05-26 07:14:12 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-05-26 07:14:12 +0100 |
| commit | 716c5dea14b2dbb080dac9f1266bff2a58ed3797 (patch) | |
| tree | 7586864b029f2dfe724ee2f74a709ba9c56507a2 | |
| parent | d2913e75a239bf4534d1ac60e9a515314c962cfa (diff) | |
| parent | 653cb05ccd2c99ab4c77e0f700fc7aeddb03bb8f (diff) | |
| download | perlweeklychallenge-club-716c5dea14b2dbb080dac9f1266bff2a58ed3797.tar.gz perlweeklychallenge-club-716c5dea14b2dbb080dac9f1266bff2a58ed3797.tar.bz2 perlweeklychallenge-club-716c5dea14b2dbb080dac9f1266bff2a58ed3797.zip | |
Merge pull request #1763 from simonminer/062-simon-miner
Submission for PWC #62 task 1
| -rw-r--r-- | challenge-062/simon-miner/perl/ch-1.pl | 27 | ||||
| -rw-r--r-- | challenge-062/simon-miner/perl/emails.txt | 5 |
2 files changed, 32 insertions, 0 deletions
diff --git a/challenge-062/simon-miner/perl/ch-1.pl b/challenge-062/simon-miner/perl/ch-1.pl new file mode 100644 index 0000000000..6cce429f77 --- /dev/null +++ b/challenge-062/simon-miner/perl/ch-1.pl @@ -0,0 +1,27 @@ +#!/usr//bin/perl + +use strict; +use warnings; +use Getopt::Std; + +my %args = (); +getopts( 'u', \%args ); + +my %domains = (); +my %seen = (); +while ( <> ) { + chomp; + my ( $mailbox, $domain ) = split( m/\@/ ); + + my $normalized = $mailbox . '@' . lc( $domain ); + next if $args{u} && exists( $seen{$normalized} ); + + push( @{ $domains{$domain} }, $mailbox ); + $seen{$normalized} = 1; +} + +my @sorted = (); +for my $domain ( sort( { lc( $a ) cmp lc( $b ) } keys( %domains ) ) ) { + push( @sorted, map( {"$_\@$domain"} sort( @{ $domains{$domain} } ) ) ); +} +print join( "\n", @sorted ) . "\n"; diff --git a/challenge-062/simon-miner/perl/emails.txt b/challenge-062/simon-miner/perl/emails.txt new file mode 100644 index 0000000000..5dc3f2ceb0 --- /dev/null +++ b/challenge-062/simon-miner/perl/emails.txt @@ -0,0 +1,5 @@ +name@example.org +rjt@cpan.org +Name@example.org +rjt@CPAN.org +user@alpha.example.org |
