问题标签 [xml-libxml]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - XML::LibXML 能否仅基于 XPath 向文档添加节点?
我正在寻找一种方法,使我可以使文本节点栩栩如生,例如:
XPath 查询有时会变得非常时髦这一事实可能是不在内部实现这种方法的一个很好的理由XML::LibXML
。
但是更简单的绝对 XPath 确实为节点提供了方便的地址表示。有时,这种方法会让生活变得更轻松,也更有意义。
为了满足这一需求,我推出了自己的过于简单的子程序,它在 XPath 上执行递归遍历,直到找到现有的 XPath,此时创建并添加必要的节点。虽然它暂时有效,但它不处理索引 XPath(如/library/book[2]/title
),并且text()
需要去除对节点的引用。
我希望有一个替代解决方案可以满足我的要求。编写我自己的 XPath-parser/node-generator 的工作量太大了。
perl - XML::LibXML 快速解析和选择元素
在编程方面,我总是陷入一些逻辑问题。我认为这是合乎逻辑且容易的,但对我来说很难,因为我无法到达那里。我正在使用 XML::LibXML 来解析 XML 文件。现在在下面的代码中
我想为除“引用”之外的所有其他 RefType 选择评论更正。我该怎么做。我想通过将所有想要的 RefTypes 放在另一个变量中,然后使用它来获取其他数据来做到这一点。这是正确的方法吗,我尝试了一些虚拟变量,如下所示
我知道这对你们中的一些人来说可能很愚蠢,但是我在一个月左右的时间里编写了一个程序,有时我会因为不知道该怎么做而感到沮丧。我尝试学习很多东西。如果这真的是一个愚蠢的问题,请原谅我。
另外,我想这样做
但在这种情况下,我如何避免 foreach 中的 RefType="Cites" 并使其等于我想要的另一个 RefType。我的意思是我不知道这种布尔值是否可以在 foreach 语句中使用。我试着寻找,也做了试验和错误,但手头没有。任何帮助是极大的赞赏。
谢谢你。
perl - 使用 XML::LibXML 解析 XML 时出现格式错误的 UTF-8 字符(致命)错误
我正在使用 XML::LibXML 解析 XML 文件。对于以下 XML 条目,我收到错误:
这是
XML中的条目如下
但是我想要从这个条目中得到的东西是 PMID、DateRevised、PubDate、ArticleTitle、CommentsCorrectionList 和 MeshHeadingList。但是,如果我删除包含其他字符的 Affiliation,则此错误不再存在。我应该如何解决这个错误?
perl - 在 x86_64 架构中以 32 位模式编译
我在 x86_64 架构的机器上运行,32 位编译的 Perl 5.8.4。当我尝试安装 XML::LibXML 时,我收到以下调试消息:
……
所以问题是,如何在 .cpan 属性(或 Makefile.PL)中描述我想在 64 位架构中以 32 位模式编译 XML::LibXML?
溴化氢
perl - 在不接触实体的情况下使用 XML::LibXML 解析 html
我正在使用 XML::LibXML 来解析一大块 html,以更改所有锚元素的 title 属性。问题是 XML::LibXML 篡改了未编码的实体,并将例如 '&' 更改为 '&' 在 href 属性中的 url 参数中。
我如何告诉 XML::LibXML 不要尝试编码或解码这些实体中的任何一个?
产生这个输出:
正如您将看到的那样,XML::LibXML 改变了 url,还有 span 标签内的文本!
perl - XML::LibXML 替换元素值
我想替换 xml 文件中元素的“VAL1”值
由于某种原因,它对我不起作用:
错误是“无法通过包“XML::LibXML::Element ...”找到对象方法“setValue”
perl - 如何在 REST::Client 模块中打印 responseXpath () 的内容
我正在使用REST::Client perl 模块来测试我的 REST 服务器。我想像往常一样打印 REST 响应 xml
目前我正在使用
在一行中打印 xml:
该REST::Client
模块还通过 为正文内容返回 xpath 上下文$client->responseXpath()
,但我找不到将它与toString()
函数 from一起使用的方法XML::LibXML
,它允许根据需要打印它:
xml - 空白子节点对 XML 解析器有用吗?
为什么我们必须要有空白 XML 节点的概念?它们为 XML 解析的炼金术带来了什么好处?
这里有一个 Perl 的简单示例XML::LibXML
:
令我困惑的是,解析器在检索所有子节点和仅检索非空白节点之间进行了区分。
这样看来,这些空白节点必须至少有一个合理的用途。确切地知道这些用途是什么会很有趣。
xml - XML::LibXML 写入 xml 时删除标题
当我用 XML::LibXML 更新值时,前两行被删除。我想按原样保留 xml,除了一个更新的值。
我原来的xml是:
……
代码是:
我尝试使用 print UPDXML $root->toStringC14N(1) 但它没有帮助......
xml - 未能在 xml 格式的结构中添加 xml 元素
出于某种原因,当我将元素附加到 xml 文件时,它写在一行中,即未格式化
原始xml:
结果是:
代替: