XPath

2018-01-21  本文已影响0人  cccshuang

XPath节点

<?xml version="1.0" encoding="ISO-8859-1"?>
<classroom>
    <student>
          <id>100</id>
          <name lang="en">jack</name>
          <age>20</age>
    </student>
</classroom>

其中,<classroom>是文档节点, <id>100</id>是元素节点,lang="en"是属性节点,jack是文本
节点间关系包括父(Parent),子(Children),同胞(Sibling),先辈(Ancestor),后代(Descendant)。如student元素是id,name,age的父。

XPath语法

使用路径表达式来选取节点或节点集。

表达式 描述
nodename 选取此节点的所有子节点
/ 从根节点选取
// 选择任意位置的某个节点
. 选取当前节点
.. 选取当前节点的父节点
@ 选取属性

如:

<?xml version="1.0" encoding="ISO-8859-1"?>
<classroom>
    <student>
          <id>100</id>
          <name lang="en">jack</name>
          <age>20</age>
    </student>
    <student>
          <id>101</id>
          <name lang="en">tom</name>
          <age>21</age>
    </student>
</classroom>

XPath轴

轴定义了所选节点与当前节点间的树关系。若首先提取到一个节点信息,然后想在这个节点的基础上提取它的子节点或者父节点,就可以用到这个概念。

  1. 绝对路径:起始于正斜杠(/),如/step/step/...
  2. 相对路径:step/step/...
    首先提出一个“步”的概念:轴名称::节点测试[谓语]。

XPath运算符

如:

上一篇 下一篇

猜你喜欢

热点阅读