在Perl中执行XPath查询XML数据的最简单方法是什么?

前端之家收集整理的这篇文章主要介绍了在Perl中执行XPath查询XML数据的最简单方法是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在寻找最简单的方法来使用Perl中的XPath查询从XML结构中快速检索数据.

以下代码结构解释了我想要实现的目标:

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适用,但最简单的方法是什么?

解决方法

XML :: LibXML并不容易,但在所有其他方面都胜过XML :: XPath.
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相关文章