Ich bin sehr neu in Perl. Ich versuche, eine XML-Datei mit Perl XML-Analysemodul XML :: Simple zu analysieren. Im Folgenden finden Sie die Probe xml ich zu analysieren versuchen:Parsing XML in Perl produzieren Ausgabe in einem anderen Format als ich erwartet
<?xml version="1.0" encoding="US-ASCII"?>
<book>
<key>ISBN1</key>
<str>name1</str>
<key>ISBN2</key>
<str>name2</str>
<key>ISBN3</key>
<str>name3</str>
<key>ISBN4</key>
<str>name4</str>
<key>ISBN5</key>
<str>name5</str>
<key>ISBN6</key>
<str>name6</str>
</book>
Below Perl-Programm, das ich die analysierte Ausgabe zu analysieren und Dump bin mit:
my $xml = XML::Simple->new;
my $data = $xml->XMLin($bookMap);
print Dumper($data);
Und der Ausgang ist:
$VAR1 = {
'str' => [
'name1',
'name2',
'name3',
'name4',
'name5',
'name6'
],
'key' => [
'ISBN1',
'ISBN2',
'ISBN3',
'ISBN4',
'ISBN5',
'ISBN6'
]
};
Aber ich brauche es in folgendem Format analysiert werden:
$VAR1 = {
'ISBN1' => 'name1',
'ISBN2' => 'name2',
'ISBN3' => 'name3',
'ISBN4' => 'name4',
'ISBN5' => 'name5',
'ISBN6' => 'name6',
};
Es scheint, dass meine XML in einem anderen Format ist als das, was Perl Xml Parser erwartet. Könnte mir jemand helfen, einen besseren Ansatz zu finden, um die erwartete Leistung zu erhalten?
Vielen Dank im Voraus.
Von http://search.cpan.org/~grantm/XML-Simple-2.22/lib/XML/Simple.pm 'Sie wirklich don‘ Ich möchte dieses Modul in neuem Code verwenden. Wenn Sie diese Warnung ignorieren und trotzdem verwenden, wird der qw (: strict) -Modus Ihnen ein wenig Schmerzen ersparen. – xxfelixxx
'XML :: LibXML' http://search.cpan.org/~shlomif/XML-LibXML-2.0126 Als Alternativen werden /LibXML.pod und 'XML :: Twig' http://search.cpan.org/~mirod/XML-Twig-3.49/Twig.pm vorgeschlagen. – xxfelixxx