[英]Parsing XML with XML::Twig
我有以下具有100個項目的XML格式,如下所示
我想解析它並提取data1和data2如何使用XML :: Twig Perl模塊做到這一點
<Item>
<data1> <data3> date </data3> </data1>
<data2> data2 </data2>
</Item>
<Item>
<data1> <date3> data22 </data3> </data1>
<data2> data2 </data2>
</Item>
....
您的XML不符合規范,因此沒有解析器可以按原樣對其進行處理。 主要問題是:
Item
是除item
以外的item
解決這些問題后,此代碼可以正常工作:
use strict; use warnings;
use XML::Twig;
my $data = <<END_DATA;
<items>
<item>
<data1> data1 </data1>
<data2> data2 </data2>
</item>
<item>
<data1> data1 </data1>
<data2> data2 </data2>
</item>
</items>
END_DATA
my $t = XML::Twig->new(
twig_handlers => {
'item' => sub {
# process each item and print contents of dataN elements
print
$_->first_child_trimmed_text('data1'), "\t",
$_->first_child_trimmed_text('data2'),"\n";
},
},
)->parse($data);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.