|
|
| sortaddr4.pl |
#!/usr/local/bin/perl -w
$addressbook = "addressbook";
open(BOOK, "<$addressbook") ||
die "Cannot open $addressbook\n";
@addresses = ();
while (<BOOK>) {
chomp;
($name, $address) = split /:/;
($lastname = $name) =~ s/.*\s//;
push(@addresses, [$lastname, $name, $address]);
}
close(BOOK);
foreach $address (sort { $a->[0] cmp $b->[0] } @addresses) {
($lastname, $name, $address) = @{$address};
printf "%-20s | %s\n", $name, $address;
}
|
![]() | Wenn nicht ein einzelnes Element hinter dem Zeiger
selektiert werden soll, sondern die gesamte Liste,
dann geht dies mit @{$address}.
|
![]() | Alternativ wäre hier auch @$address akzeptiert
worden -- dennoch ist die andere Variante lesbarer
und in komplizierteren Fällen ohne Mehrdeutigkeiten.
|
|
| Copyright © 1996, 1998, 1999, 2000 Andreas Borchert, in HTML konvertiert am 07.02.2000 |