- Как можно сортировать адресса e-mail с помощью PHP?, ВоВкА, 13:05 , 26-Окт-06 (1)
>Предо мной постало задание написать скрипт который бы мого сортировать адреса e-mail >которые хранятся в текстовом файле, по их доменах... например: rambler.ru, mail.ru... >а также найти одинаковые и оставить только один из них... #!/usr/bin/perl open BLK,"<./emails.txt"; while(<BLK>){ $str=$_; chomp($str); foreach ($str){($uname,$domain)=split(/\@/); $HASH{$domain}{$uname}=$uname; } } for my $k1 ( sort keys %HASH ) { for my $k2 ( sort keys %{$HASH{$k1}} ) { print %HASH->{$k1}{$k2},"@","$k1\n"; } }
Примерно так Если что то непонятно и т.д пиши на мыло удачи
- Как можно сортировать адресса e-mail с помощью PHP?, ВоВкА, 13:10 , 26-Окт-06 (2)
да можно убрать вывод значения хеша типа так будет #!/usr/bin/perl open BLK,"<./emails.txt"; while(<BLK>){ $str=$_; chomp($str); foreach ($str){($uname,$domain)=split(/\@/); $HASH{$domain}{$uname}=$uname; } } for my $k1 ( sort keys %HASH ) { for my $k2 ( sort keys %{$HASH{$k1}} ) { print $k2,"@","$k1\n"; } }
- Как можно сортировать адресса e-mail с помощью PHP?, XAnder, 14:27 , 26-Окт-06 (3)
>>Предо мной постало задание написать скрипт который бы мого сортировать адреса e-mail >>которые хранятся в текстовом файле, по их доменах... например: rambler.ru, mail.ru... >>а также найти одинаковые и оставить только один из них... > >#!/usr/bin/perl > <...> > >Примерно так > >Если что то непонятно и т.д пиши на мыло >удачи ВоВкА, не обижайся, но что-то твой код не похож на PHP ;) Можно, например, поступить так: $eMails = array_unique(file("path/to/file")); function cmp ($a, $b) { list($aUser, $aHost) = explode("@", $a); list($bUser, $bHost) = explode("@", $b); $hostCmp = strcmp($aHost, $bHost); if ($hostCmp != 0) return $hostCmp; else return strcmp($aUser, $bUser); } usort($eMails, "cmp"); Теперь $eMails содержит нужным образом отсортированный массив. PS. Не тестировал :)
- Как можно сортировать адресса e-mail с помощью PHP?, Andrey, 14:44 , 26-Окт-06 (4)
Спасибачки) Шас посмотрю, может и чтото выйдет... - Как можно сортировать адресса e-mail с помощью PHP?, ВоВкА, 15:34 , 26-Окт-06 (5)
да согласен это не PHP но переписать саму идею можно легко а если это надо сделать 1-2 раза и у человека есть доступ к perl то думаю и мой вариант прокатит
- Как можно сортировать адресса e-mail с помощью PHP?, primus, 20:19 , 26-Окт-06 (6)
cat addresses.txt | sort | uniq на выходе отсортированные "неодинаковые" адреса
- Как можно сортировать адресса e-mail с помощью PHP?, XAnder, 08:17 , 27-Окт-06 (7)
>cat addresses.txt | sort | uniq >на выходе отсортированные "неодинаковые" адреса Красиво, но сортировать надо не по адресам а по доменам.
- Как можно сортировать адресса e-mail с помощью PHP?, primus, 22:03 , 27-Окт-06 (8)
>>cat addresses.txt | sort | uniq >>на выходе отсортированные "неодинаковые" адреса > >Красиво, но сортировать надо не по адресам а по доменам. Зря я наверное упираюсь :) ведь не пхп же... Но ведь там ( в пхп) пайпы есть? cat addr.txt|awk -F@ '{printf("%s %s\n", $2, $1)}'|sort|uniq|awk '{printf("%s@%s\n", $2, $1)}'
|