假设我有一个XML文件
<table>
<person>
<ID>1</ID>
<Name>Adam</Name>
</person>
<student>
<Subject>Math</Subject>
<Marks>90</Marks>
</student>
<employee>
<ID>7</ID>
<Name>Bill</Name>
</employee>
</table>
我想获取table
元素的子元素。即输出应为person
,student
和employee
。如何使用Perl中的XML::LibXML
模块执行此操作?
答案 0 :(得分:2)
for my $node ($doc->findnodes('/table/*')) {
say $node->nodeName();
}
或
use XML::LibXML qw( XML_ELEMENT_NODE );
my $root = $doc->documentElement();
for my $node ( grep { $_->nodeType() == XML_ELEMENT_NODE } $root->childNodes() ) {
say $node->nodeName();
}