2015-02-20T10:10:02 MuffiWas heisst effizient?
2015-02-20T10:17:05 rostiÜberlege Dir eine zweckmäßige Datnstruktur und überlasse das Speichern in Dateien Storable.pm oder anderen Serializern.
1 2 3 4
my @messreihen = ([1,3,2,5,4], [154,87,35]); for my $messreihe (@messreihen) { say join ",", @$messreihe; }
2015-02-20T11:20:44 RaubtierNatürlich unter der Annahme, dass sonst nichts in der Datei ist.
Quote<spam-document version="3.5" timestamp="2002-05-13 15:33:45">
<!-- Automatisch erzeugt durch WarbleSoft Spam Version 3.5 -->
<customer>
<first-name>Johannes</first-name>
<surname>Jäger</surname>
<address>
<street>Murmelstr. 17</street>
<city>Metzingen</city>
<state>Baden-Württemberg</state>
<zip>72555</zip>
</address>
<email>jjaeger@example.org</email>
<age>42</age>
</customer>
<customer>
<first-name>Henrietta</first-name>
<surname>Kittinger</surname>
<address>
<street>Ermsstr. 2</street>
<city>Eningen</city>
<state>Baden-Württemberg</state>
<zip>72800</zip>
</address>
<email>kitty@example.org</email>
<age>37</age>
</customer>
</spam-document>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
for my $customer (@{$cust_xml->{customer}}) { # Der Inhalt von 'first-name' und 'surname' wird in Großbuchstaben umgewandelt. # Das geht sehr einfach mit der in Perl eingebauten Funktion uc( ). foreach ($customer->{'first-name'}) { $curLine = "$_;"; } foreach ($customer->{'email'}) { $curLine .= "$_;"; } foreach ($customer->{'surname'}) { $curLine .= "$_.\n"; } print $curLine; $curLine = "" }
Quote<?xml version="1.0" encoding="ISO-8859-1"?>
<Tag2 docType="fdkfj"">
<Tag1 version="54">
<spam-document version="3.5" timestamp="2002-05-13 15:33:45">
<!-- Automatisch erzeugt durch WarbleSoft Spam Version 3.5 -->
<customer>
<first-name>Johannes</first-name>
<surname>Jäger</surname>
<address>
<street>Murmelstr. 17</street>
<city>Metzingen</city>
<state>Baden-Württemberg</state>
<zip>72555</zip>
</address>
<email>jjaeger@example.org</email>
<age>42</age>
</customer>
<customer>
<first-name>Henrietta</first-name>
<surname>Kittinger</surname>
<address>
<street>Ermsstr. 2</street>
<city>Eningen</city>
<state>Baden-Württemberg</state>
<zip>72800</zip>
</address>
<email>kitty@example.org</email>
<age>37</age>
</customer>
</spam-document>
</Tag1>
</Tag2>
1
2
3
4
5
6
my $parser = new XML::Parser ( Handlers => { # Creates our parse
Start => \&hdl_start,
End => \&hdl_end,
Char => \&hdl_char,
Default => \&hdl_def,
});
1
2
3
4
5
6
7
8
9
10
11
12
sub hdl_start{
my ($p, $elt, %atts) = @_;
return if $elt =~ /^(?:foo|bar|baz)$/;
if ($elt eq 'Tag1')
{
$firstAtt = $atts{'erstesAttribut'} );
}
#.. etc
}