Thread array aus mehreren array erstellen und in skalar umwandeln (18 answers)
Opened by derPerlwwerker at 2019-09-13 20:47

styx-cc
 2019-09-15 13:37
#190475 #190475
User since
2006-05-20
533 Artikel
BenutzerIn

user image
Eine Möglichkeit:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/perl 
use strict;
use warnings;

my %attributes;

for my $line (<DATA>) { #__DATA__ zeilenweise durchlaufen
        chomp $line; #Zeilenumbruch entfernen
        my @line_parts = split / /, $line; #Zeile in n Teile aufteilen
        my $identifier = shift @line_parts; #erstes Element von @line_parts als Bezeichner verwenden
        $attributes{$identifier} = \@line_parts; #Rest zuweisen

        print "$identifier: $attributes{$identifier}->[0]\n"; #Ausgabe1
}

#Ausgabe2
for my $attr (sort keys %attributes) {
    print "$attr";
    print ":" . (@{ $attributes{$attr} })[1 .. $#{ $attributes{$attr} }] . " " if defined( @{ $attributes{$attr} }[1]); #prüfen ob noch etwas zum Augeben außer dem Bezeichner vorhanden ist und ggf. Ausgabe
}

__DATA__
Attribut1 50 :xyz,xy
Attribut2 Zeit :nv
Attribut3 17:00:00


Edit: sort zu den keys hinzugefügt
Last edited: 2019-09-15 13:47:49 +0200 (CEST)
Pörl.

View full thread array aus mehreren array erstellen und in skalar umwandeln