寻找从一般xpath返回可能抓取多个结果的完整xpath。Perl XML lib获取完整xpath
搜索字符串会是这样的东西一般: /myXmlPath/@ myvalue的
内包含的XML节点可能是这个样子:
<myXmlPath someAttribute="false" myValue="">
<myXmlPath someAttribute="true" myValue="">
Perl代码是这样的:
use XML::LibXML;
use XML::XPath::XMLParser;
my $filepath = "c:\\temp\\myfile.xml";
my $parser = XML::LibXML->new();
$parser->keep_blanks(0);
my $doc = $parser->parse_file($filepath);
@myWarn = ('/myXmlPath/@myValue');
foreach(@myWarn) {
my $nodeset = $doc->findnodes($_);
foreach my $node ($nodeset->get_nodelist) {
my $value = $node->to_literal;
print $_,"\n";
print $value," - value \n";
print $node," - node \n";
}
}
我希望能够评估从XML返回的完整路径值。当我使用它在xpath中查找一般事物时,此代码正常工作,但如果我可以从节点集结果中获取其他数据,则该代码会更理想。
我不太明白你想要什么。你能包括所需的输出?但首先,你能修正你的例子,因此它是有效的XML吗? (你提供的有多个根节点和未封闭的元素。) – ikegami