xpath - 如何在 XPath 中为空节点的 text() 返回 ''?

标签 xpath libxml2

<td></td><td>foo</td>
我想返回 ['', 'foo'] 但 libxml 的 xpath //td/text() 只返回 ['foo'] 。如何找到空标签为 '' 而不是(不匹配)?

最佳答案

只要您专门选择文本节点,就不能。因为在第一个 <td> 中根本没有文本节点。

当您将 XPath 表达式更改为 '//td' 时,您将获得两个 <td> 节点。在进一步处理中使用它们的文本值。

关于xpath - 如何在 XPath 中为空节点的 text() 返回 ''?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2420705/

相关文章:

xslt - XSL 子串和 indexOf

c - 如何获取 xmlHashTable 的键? (libxml2)

c++ - 在 FreeBSD 上构建 lxml 示例时未定义对 glib 的引用

xml - 使用 XML::LibXML 遍历节点

xml - 使用 XML::LibXML 删除 XML 命名空间

xml - 使用 libxml-ruby 解析命名空间 XML

python - Python 的 XPath 语法

python-3.x - 检查 python selenium 中是否存在元素

xml - 使用 distinct-values() 时的 XQuery

python - 展开默认 (dita) 属性