gpt4 book ai didi

xml - 使用 CSS 选择器解析 Perl XML

转载 作者:数据小太阳 更新时间:2023-10-29 02:36:45 27 4
gpt4 key购买 nike

有人知道可以解析 XML 文档并使我能够通过 CSS 选择器和 namespace 支持选择节点的 Perl 库吗?

背景:我试图用 perl libxml 包解析带有默认命名空间的文档,但在我从根节点中删除默认命名空间之前它从未返回任何内容。

这是我在该主题上找到的内容: https://mail.gnome.org/archives/xml/2003-April/msg00143.html

所以一个简单的例子就是这样一个文件:

<?xml version="1.0" encoding="utf-8"?>
<root xmlns="http://example.com/ns">
<message>Hi</message>
</root

XPath //message 使用 perl libxml 不会给我任何结果。我知道该库正在完美地完成它的工作,但我仍然需要解析这些东西,所以我认为基于 CSS 选择器的库可能会更成功。

最佳答案

这应该适用于您可以在 libxml 中使用的任何内容。

use strictures;
use HTML::TreeBuilder::LibXML qw();
BEGIN { HTML::TreeBuilder::LibXML->replace_original; }
use Web::Query qw();

print Web::Query->new_from_html(<<'MARKUP')->find('root > message')->text;
<?xml version="1.0" encoding="utf-8"?>
<root xmlns="http://example.com/ns">
<message>Hi</message>
</root>
MARKUP

1;

关于xml - 使用 CSS 选择器解析 Perl XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11063871/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com