As long as your data set isn't huge you can read them it into a hash of array refs keyed on the group then print it:
use strict;
use warnings;
my %users;
foreach (<DATA>) {
chomp;
my ($g, $u) = split / /;
push @{$users{$g}}, $u;
}
print "Content-type: text/html\n\n";
print "<pre>\n";
foreach my $g (keys %users) {
print "$g " . join(', ', @{$users{$g}}) . "\n";
}
print "</pre>\n";
__DATA__
group user
group user2
group user3
group3 user
group3 user2
group4 user3
~Charlie
http://www.perldoc.com/...8.4/pod/perldsc.html
Code:
#!/usr/bin/perl use strict;
use warnings;
my %users;
foreach (<DATA>) {
chomp;
my ($g, $u) = split / /;
push @{$users{$g}}, $u;
}
print "Content-type: text/html\n\n";
print "<pre>\n";
foreach my $g (keys %users) {
print "$g " . join(', ', @{$users{$g}}) . "\n";
}
print "</pre>\n";
__DATA__
group user
group user2
group user3
group3 user
group3 user2
group4 user3
~Charlie
http://www.perldoc.com/...8.4/pod/perldsc.html