XPath 运算符
以下是可在 XPath 表达式中使用的 xpath 运算符列表:
运算符 | 描述 | 例子 | 返回值 |
---|---|---|---|
\| | 计算两个节点集 | //书| //光盘 | 返回包含所有 book 和 cd 元素的节点集 |
+ | 添加 | 6 + 4 | 10 |
- | 减法 | 6 - 4 | 2 |
* | 乘法 | 6*4 | 24 |
div | 除法 | 8格4 | 2 |
= | 等于 | price=9.80 | 如果price为 9.80,则为 true 如果price为 9.90,则为 false |
!= | 不等于 | price!=9.80 | 如果price为 9.90,则为 true 如果price为 9.80,则为 false |
< | 小于 | price<9.80 | 如果price为 9.00,则为 true 如果price为 9.80,则为 false |
< = | 小于或者等于 | price< =9.80 | 如果price为 9.00,则为 true 如果price为 9.90,则为 false |
> | 大于 | price>9.80 | 如果price为 9.90,则为 true 如果price为 9.80,则为 false |
>= | 大于或者等于 | price>=9.80 | 如果price为 9.90,则为 true 如果price为 9.70,则为 false |
or | 或者 | price=9.80 或者price=9.70 | 如果price为 9.80,则为 true 如果price为 9.50,则为 false |
and | 和 | price>9.00 和price<9.90 | 如果price为 9.80,则为 true 如果price为 8.50,则为 false |
mod | 模数(除法余数) | 5 mod 2 | 1 |
XPath 轴
轴定义了相对于当前节点的节点集。
以下是默认定义的轴。
轴名称 | 结果 |
---|---|
ancestor | 选择当前节点的所有祖先(父、祖父等) |
ancestor-or-self | 选择当前节点和当前节点本身的所有祖先(父、祖父等) |
attribute | 选择当前节点的所有属性 |
child | 选择当前节点的所有子节点 |
descendant | 选择当前节点的所有后代(子节点、孙子节点等) |
descendant-or-self | 选择当前节点和当前节点本身的所有后代(子节点、孙子节点等) |
following | 选择文档中当前节点结束标记之后的所有内容 |
following-sibling | 选择当前节点之后的所有兄弟节点 |
namespace | 选择当前节点的所有命名空间节点 |
parent | 选择当前节点的父节点 |
preceding | 选择文档中出现在当前节点之前的所有节点,祖先节点、属性节点和命名空间节点除外 |
preceding-sibling | 选择当前节点之前的所有兄弟节点 |
self | 选择当前节点 |
在 xpath 中使用谓词
谓词用于查找特定节点或者包含特定值的节点。
谓词总是嵌入在方括号中。
欢迎来到之路教程(on itroad-com)
使用 xpath 到达未知节点
XPath 通配符可用于选择未知的 XML 元素。
通配符 | 描述 |
---|---|
* | 匹配任何元素节点 |
@* | 匹配任何属性节点 |
node() | 匹配任何类型的任何节点 |
使用 xpath 选择节点
表达式 | 描述 |
---|---|
nodename | 选择名称为“nodename”的所有节点 |
/ | 从根节点选择 |
// | 从当前节点中选择文档中与选择匹配的节点,无论它们在哪里 |
. | 选择当前节点 |
.. | 选择当前节点的父节点 |
@ | 选择属性 |
XPath 使用 UNIX 和 regex kind 语法。
日期:2020-09-17 00:10:15 来源:oir作者:oir