xml - XPath:选择文本节点

标签 xml xpath selection

具有以下 XML:

<node>Text1<subnode/>text2</node>

如何通过 XPath 选择第一个或第二个文本节点?

像这样:

/node/text()[2]

当然不行,因为它是节点内所有文本的合并结果。

最佳答案

Having the following XML:

<node>Text1<subnode/>text2</node> 

How do I select either the first or the second text node via XPath?

使用:

/node/text()

这会选择 XML 文档顶部元素(名为“节点”)的所有文本节点子元素。

/node/text()[1]

这将选择 XML 文档顶部元素(名为“节点”)的第一个文本节点子节点。

/node/text()[2]

这将选择 XML 文档顶部元素(名为“节点”)的第二个文本节点子元素。

/node/text()[someInteger]

这将选择 XML 文档的顶部元素(名为“节点”)的第 someInteger-th 文本节点子节点。它等效于以下 XPath 表达式:

/node/text()[position() = someInteger]

关于xml - XPath:选择文本节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5033955/

相关文章:

mysql - If then 记录多个条件的选择

arrays - 如何在 swift 中从 xml 文件获取数组

ios - 搜索对象数组以返回与属性值匹配的对象

xml - "incorrect syntax near modify"更新列值的 xml 类型时

javascript - 以编程方式创建 XPath 表达式

javascript - Selenium 中的 XPath 是否针对 DOM 或 HTML 文件运行?

javascript - 如何在 AngularJS 中设置选项值

python - 此 XML 文件似乎没有任何关联的样式信息。文档树如下所示。 2

html - 缩进 vim HTML 中的所有标签

Eclipse 相当于 Visual Studio ALT + 选择多行文本