XPath简记

什么是 XPath?

XPath即为XML路径语言,它是一种用来确定XML文档中某部分位置的语言。XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。

  • XPath 使用路径表达式在 XML 文档中进行导航
  • XPath 包含一个标准函数库
  • XPath 是 XSLT (扩展样式表转换语言)中的主要元素
  • XPath 是一个 W3C 标准

XPath 标准函数

  • XPath 含有超过 100 个内建的函数。这些函数用于字符串值、数值,日期和时间比较、节点和 QName 处理、序列处理、逻辑值等等。
  • w3c要求所有支持XPath的工具都要实现核心函数集
    核心函数集:
    在这里插入图片描述
    函数说明索引:
    https://docs.microsoft.com/en-us/previous-versions//ms256138%28v%3dvs.85%29
    http://www.w3school.com.cn/xpath/xpath_functions.asp

XPath 术语 之 节点(Node)

在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档节点(或称为根节点)。
在这里插入图片描述

节点关系

  • 父(Parent)
    每个元素以及属性都有一个父。
  • 子(Children)
    元素节点可有零个、一个或多个子。
  • 同胞(Sibling)
    拥有相同的父的节点
  • 先辈(Ancestor)
    某节点的父、父的父,等等。
  • 后代(Descendant)
    某个节点的子,子的子,等等。

XPath 语法

  • XPath 使用路径表达式来选取 XML 文档中的节点或节点集。节点是通过沿着路径 (path) 或者步 (steps) 来选取的。
  • 下面将从下面几个方面来介绍:
    • 选取节点
    • 谓语(Predicates)
    • 选取未知节点
    • 选取若干路径

一个XML文档实例

在这里插入图片描述

选取节点 之 最常用的路径表达式

在这里插入图片描述

选取节点 之 实例

在这里插入图片描述
注意: 不带/或//开头的表示从“当前路径”开始,这个当前路径一般就是根节点。
比如上例,book/title 会报找不到元素的错误;应该使用//book/title,无论book元素有一个还是多个。

谓语(Predicates)

  • 谓语用来查找某个特定的节点或者包含某个指定的值的节点。
  • 谓语被嵌在方括号中。
    在这里插入图片描述
    在这里插入图片描述

选取未知节点 之 符号

在这里插入图片描述

选取未知节点 之 实例

在这里插入图片描述

选取若干路径 之 实例

通过在路径表达式中使用“|”运算符,您可以选取若干个路径。
在这里插入图片描述

XPath Axes(坐标轴)

XPath Axes(坐标轴)
在这里插入图片描述

扫描二维码关注公众号,回复: 9165336 查看本文章

位置路径表达式

  • 位置路径可以是绝对的,也可以是相对的。
  • 绝对路径起始于正斜杠( / ),而相对路径不会这样。在两种情况中,位置路径均包括一个或多个步,每个步均被斜杠分割:
  • 绝对位置路径:
    /step/step/…
  • 相对位置路径:
    step/step/…
  • 每个步均根据当前节点集之中的节点来进行计算。

步(step)包括:

  • 轴(axis)
    定义所选节点与当前节点之间的树关系
  • 节点测试(node-test)
    识别某个轴内部的节点
  • 零个或者更多谓语(predicate)
    更深入地提炼所选的节点集
  • 步的语法:
    轴名称::节点测试[谓语]
    在这里插入图片描述

XPath实例

在这里插入图片描述

发布了193 篇原创文章 · 获赞 23 · 访问量 33万+

猜你喜欢

转载自blog.csdn.net/zhiyuan411/article/details/89680190
今日推荐