|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Vladimir Podgorny 2:5020/400 28 Jan 2003 12:11:48 To : Alexander Ponomarenko Subject : Re: В чем проблема? -------------------------------------------------------------------------------- Alexander Ponomarenko <Alexander.Ponomarenko@p10.f1067.n5030.z2.fidonet.org> wrote: > Hello everybody. > > Есть такой файл: > === Cut === > user3 group3 comment > user1 group1 > user2 group2 > user1 group2 comment > user4 > user3 group2 > user2 group4 comment > user3 group1 > === Cut === > > Hужно вывести список юзеров отсортированный в обратном порядке с указанием > всех групп, в которые он входит, т.е. : user4: user3: group1, group2, > group3 user2: group2, group4 user1: group1, group2 #!/usr/bin/perl -wT -- use strict; use warnings; my %users = qw(); while (<DATA>) { my($user, $group) = (split /\s+/, $_)[0, 1]; push @{$users{$user}}, $group if $user and $group; } printf "%s: %s\n", $_, join(', ', sort @{$users{$_}}) foreach (sort keys %users); __DATA__ user3 group3 comment user1 group1 user2 group2 user1 group2 comment user4 user3 group2 user2 group4 comment user3 group1 -- Vladimir A. Podgorny Adamant ltd. deputy director (technical) phone/fax: +380(44)5667722 --- ifmail v.2.15dev5 * Origin: Adamant ISP news server (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/120344b97136f.html, оценка из 5, голосов 10
|