跳至主要內容

xpath (xml find)

Entity大约 1 分钟

xpath (xml find)

表达式

表达式描述
node_name选取此节点的所有子节点
/绝对路径,从根节点选取
//相对路径,从所有节点中查找符合条件的节点,包括子节点和后代节点
.选取当前节点
..选取当前节点的父节点
@选取属性值

节点类型

类型描述
Root根元素节点
Element元素节点
Text文本节点
Attribute节点的属性
Comment注释

通配符

通配符描述
*匹配任意元素节点
@*匹配任意属性节点
node()匹配任何类型的节点

函数或属性

property描述
text()/div/text() = 获取文本,/div/[text()='xxx'] = 文本为xxx的元素
starts-with(@attribute, 'xxx')属性名以xxx开头的元素
contains(@attribute, '')属性名包含xxx的元素
[@attribute=xxx and @attribute=xxx2]同时有两个属性值的元素
text()子文本节点
concat(string1,string2,...)连接所有字符串
ceiling()向上取整
floor()向下取整
round()四舍五入
sum()返回两个数的整合

谓词

谓词描述
[position()]/div/[position() = 0]序号等于0的元素
[last()]最后一个元素
[@属性名 = '内容']属性的内容=xxx的元素
[元素 = xxx]/div/[div = content] 元素的值等于xxx的

运算符

运算符描述
|计算两个节点集
+
-
*
div除法
mod取余
=
!=
<
>
<=
>=
or
and
not()不等于xxx的xxx
<!-- 选择根节点div元素 -->
//div
<!-- 选择元素为div并且属性id=‘my_id’的元素 -->
//div[@id='my_id']
选择包含id属性的元素
//div/@id