my @array = ('nachname','usw'); my @_daten = (""); # Speicher fuer alle Datensaetze my @matrix = (\@array,\@_daten); #stopf die beiden arrays in ein array my @data; open(DATA, ") { # alles was unten in __DATA__ steht symbolisiert eine Datei chomp; my @matrix = (); @matrix = split(/;/); # $_ ist standard foreach (@matrix) { s%^\s+%%g; # fuehrende und s%\s+$%%g; # abschliessende Blanks entfernen } # foreach push(@data,[@matrix[0..2]]); } # while my $len_vorname = find_longest(map{$_->[0]}@data); my $len_nachname = find_longest(map{$_->[1]}@data); my $len_domain = find_longest(map{$_->[2]}@data); for my $entry(@data){ print sprintf("%-*s %-*s %-*s<<\n",$len_vorname,$entry->[0], $len_nachname,$entry->[1], $len_domain,$entry->[2]); } sub find_longest{ my $longest = 0; for(@_){ my $length = length($_); $longest = $length if($length > $longest); } return $longest; }