在使用XML :: DOM解析器中的getAttribute函数时,如何获取实际属性值而不是XML::DOM::NamedNodeMap=HASH(0xa3246d4)
代码
my $parent = $doc->getElementsByTagName ("ParentTag")->item(0);
my @parent = $childnodes->getChildNodes();
{
foreach my $parent(@parent)
{
if ($parent->getNodeType == ELEMENT_NODE)
{
print $parent->getNodeName;
print $parent->getAttributes;
}
}
}
答案 0 :(得分:1)
getAttributes的返回值看起来是XML::DOM::NamedNodeMap
对象,因此您可以使用该对象按名称获取属性值,例如
my $nodemap = $parent->getAttributes;
my $node = $nodemap->getNamedItem('foo');
$node
反过来将是一个XML::DOM::Node
对象,它将拥有自己的方法并拥有自己的文档。
有很多课程,阅读所有docs会有所帮助。如果它看起来太多了,你可能可以使用XML::Simple
,这通常足够好,直到它不再足够好: - )