Java XPath 解析器 - 概述


XPath 是万维网联盟 (W3C) 的官方推荐。它定义了一种在 XML 文件中查找信息的语言。它用于遍历 XML 文档的元素和属性。XPath提供了各种类型的表达式,可用于从XML文档中查询相关信息。

什么是 XPath?

  • 结构定义- XPath 定义 XML 文档的各个部分,如元素、属性、文本、命名空间、处理指令、注释和文档节点。

  • 路径表达式- XPath 提供强大的路径表达式,例如 XML 文档中的选择节点或节点列表。

  • 标准函数- XPath 提供了丰富的标准函数库,用于操作字符串值、数值、日期和时间比较、节点和 QName 操作、序列操作、布尔值等。

  • XSLT 的主要部分- XPath 是 XSLT 标准的主要元素之一,必须对 XPath 有足够的了解才能使用 XSLT 文档。

  • W3C 推荐- XPath 是万维网联盟 (W3C) 的官方推荐。

XPath 表达式

XPath 使用路径表达式从 XML 文档中选择节点或节点列表。以下是从 XML 文档中选择任何节点/节点列表的有用路径和表达式的列表。

先生。 表达与描述
1

节点名称

选择具有给定名称“nodename”的所有节点

2

/

从根节点开始选择

3

//

选择从与选择匹配的当前节点开始

4

选择当前节点

5

..

选择当前节点的父节点

6

@

选择属性

7

学生

示例- 选择名为“student”的所有节点

8

班级/学生

示例- 选择属于班级子级的所有学生元素

9

//学生

选择所有学生元素,无论它们位于文档中的位置

谓词

谓词用于查找特定节点或包含特定值的节点,并使用 [...] 进行定义。

表达 结果
/班级/学生[1] 选择作为班级元素的子元素的第一个学生元素。
/班级/学生[最后()] 选择作为班级元素的子元素的最后一个学生元素。
/班级/学生[最后()-1] 选择最后一个学生元素,它是班级元素的子元素。
//学生[@rollno = '493'] 选择所有具有名为 rollno 且值为“493”的属性的学生元素