我从 Web 服务获取 XML 文件。现在我想从文件中获取这些元素之一。

我想我应该使用 XPath - 有什么好的入门参考吗?

有帮助吗?

解决方案

不是 VB 特定的,但试试这个: http://www.w3schools.com/xsl/xpath_intro.asp

其他提示

我刚刚恢复了我的 XPath 技能 - 这 Xslt 和 XPath 快速参考表 是一个非常有用的参考 - 它没有深入探讨,但它列出了可用的内容以及您可能想要搜索更多信息的内容。

之前链接的 w3schools 教程并不是那么好 - 需要很长时间才能涵盖很多内容 - 但它仍然值得阅读。

一种方法是仅使用 xslt 文件将所需信息提取到新的 xml 中,并使用此新的 xml 作为进一步处理的数据基础

如果我需要做一些 XPath,我只需调整这些示例之一。

  • 子::节点() 选择上下文节点的所有子节点,无论其节点类型如何
  • 属性::名称 选择上下文节点的名称属性
  • 属性::* 选择上下文节点的所有属性
  • 后代::para 选择上下文节点的 para 元素后代
  • 祖先::div 选择全部 分区 上下文节点的祖先
  • 祖先或自我::div 选择 分区 上下文节点的祖先,如果上下文节点是 div 元素,也是上下文节点
  • 后代或自身::para 选择 帕拉 上下文节点的元素后代,如果上下文节点是 帕拉 元素,上下文节点也是如此
  • 自我::段落 选择上下文节点(如果它是) 帕拉 元素,否则不选择任何内容
  • 子::章节/后代::段落 选择 帕拉 上下文节点的章节元素子代的元素后代
  • 子::*/子::para 选择全部 帕拉 上下文节点的孙子节点
  • / 选择文档根(始终是文档元素的父级)
  • /后代::para 选择所有 帕拉 与上下文节点位于同一文档中的元素
  • /后代::olist/子::项目 选择所有具有 奥利斯特 父节点和与上下文节点位于同一文档中的节点
  • 子::para[位置()=1] 选择第一个 帕拉 上下文节点的子节点
  • 子::para[位置()=最后()] 选择最后一个 帕拉 上下文节点的子节点
  • 子::para[position()=last()-1] 选择最后一个 帕拉 上下文节点的子节点
  • 子::para[位置()>1] 选择所有 帕拉 除上下文节点的第一个子节点之外的上下文节点的子节点
  • 以下兄弟姐妹::章节[position()=1] 选择下一个 章节 上下文节点的兄弟节点
  • 前同级::章节[position()=1] 选择上一个 章节 上下文节点的兄弟节点
  • /后代::图[位置()=42] 选择文档中的第四十二个图形元素
  • /child::doc/child::章节[position()=5]/child::section[position()=2] 选择第五部分的第二部分 章节文档 文档元素
  • 子::para[属性::类型=“警告”] 选择全部 帕拉 具有带值的类型属性的上下文节点的子节点 警告
  • child::para[属性::type='警告'][position()=5] 选择第五个 帕拉 具有值警告的类型属性的上下文节点的子节点
  • child::para[position()=5][attribute::type="warning"] 选择第五个 帕拉 上下文节点的子节点(如果该子节点具有带值的类型属性) 警告
  • 子::章节[子::标题='简介'] 选择上下文节点的章节子级,该子级具有一个或多个标题子级且字符串值等于“简介”
  • 子::章节[子::标题] 选择 章节 具有一个或多个标题子级的上下文节点的子级
  • child::*[self::章节或 self::附录] 选择 章节附录 上下文节点的子节点
  • child::*[self::章节或 self::appendix][position()=last()] 选择最后一个 章节 或者 附录 上下文节点的子节点

可以找到深入的文档 这里. 。这些示例也取自那里。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top