在Perl中执行XML数据的XPath查询的最简单方法是什么? [英] What is the easiest way to do XPath querying of XML data in Perl?

查看:69
本文介绍了在Perl中执行XML数据的XPath查询的最简单方法是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在寻找最简单的方法来使用Perl中的XPath查询从XML结构中快速检索数据。

I am looking for the simplest way possible to quickly retrieve data from an XML structure using XPath queries in Perl.

以下代码结构说明了我想要的实现:

The following code structure explains what I'd like to achieve:

my $xml_data = "<foo><elementName>data_to_retrieve</elementName></foo>";
my $xpath_query = "//elementName";
my $result_of_query = ... what goes here? ...
die unless ($result_of_query eq 'data_to_retrieve');

显然TIMTOWTDI适用,但是最简单的方法是什么?

Obviously TIMTOWTDI applies, but what would be the easiest way to do it?

推荐答案

XML :: LibXML 并不容易,但是在其中击败了 XML :: XPath

XML::LibXML is not easier, but beats XML::XPath in every other aspect.

use XML::LibXML;
my $xml_data = XML::LibXML->load_xml(
    string => '<foo><elementName>data_to_retrieve</elementName></foo>'
);
die unless 'data_to_retrieve' eq
    $xml_data
      ->findnodes('//elementName')
      ->get_node(1)
      ->textContent;

这篇关于在Perl中执行XML数据的XPath查询的最简单方法是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆