XPath 是 XML 的查询语言
参考资料
XPath(XML Path Language)
简介
用于在XML文档中导航和查询节点的语言
W3C标准
可用于XSLT、XQuery等XML技术中
基本概念
节点:元素、属性、文本等
路径表达式:定位节点的语法
谓词:筛选节点的条件
节点类型
元素节点
属性节点
文本节点
命名空间节点
处理指令节点
注释节点
文档节点
路径表达式语法
/:从根节点开始
//:从任意位置开始
.:当前节点
..:父节点
@:属性
常用运算符
|:联合多个路径
*:通配符
[]:谓词表达式
and/or:逻辑运算
=,!=,<,>:比较运算
轴(Axis)
child:::子节点(默认)
attribute:::属性
descendant:::后代
ancestor:::祖先
following:::之后的节点
preceding:::之前的节点
内置函数
text():获取文本内容
count():计数
sum():求和
position():位置
last():最后位置
contains():包含检测
starts-with():开头检测
示例
基本路径:
/bookstore/book:选择根bookstore下的所有book元素
//book:选择文档中所有book元素
bookstore//book:选择bookstore后代中的所有book
属性选择:
//@lang:选择所有lang属性
//book[@lang='en']:选择lang属性为en的book
谓词:
/bookstore/book[1]:第一个book
/bookstore/book[last()]:最后一个book
/bookstore/book[price>35]:价格大于35的book
函数:
//book[contains(title,'XML')]:标题包含XML的book
count(//book):统计book数量
轴:
child::book:子book元素
attribute::lang:lang属性
ancestor::book:祖先book元素
使用场景
XML文档查询
Web抓取(结合HTML解析)
数据提取
自动化测试
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。