XML中的XPath表达式
位置步:表达式中由反斜杠分开的每个部分被称为一个位置步。
轴:是与上下文节点相对的文档的一部分,它定义了一组与当前节点有特定层次关系的节点。
节点测试:可以用来指示位置路径中一组合法节点的任何表达式。节点测试通过名字或类型筛选初始结果集。
-child::text():返回所有文本子节点。
谓词:true或false的一个表达式。
XPath表达式示例
./Order将找到当前上下文中名为Order的所有元素
/Order将找到文档树中根下所有名为Order的元素
//Order将在文档树的任何地方找到所有名为Order的元素,不管深度或层次结构。
child::Customer:返回当前节点子元素中的所有Customer元素。
descendent::OrderItem:返回节点名为“OrderItem”的所有后代。
child::book[attribute::publisher='张三']
child::book[@publisher='张三']
descendent::book[count(child::chapter)>5]:用count函数检索所有chapter大于5的后代book节点
child::book[start-with(attribute::publisher,'张')]:使用start-with函数检索所有publisher属性以‘张’开头的book子节点。
XPath缩略语法
//代表后代轴
@代表属性轴
.代表自己
..代表父节点