栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

XPath

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

XPath

XPath是一种专门用来在xml文档中查找信息的语言,类似数据库的SQL

XPath 教程 | 菜鸟教程

下面是我在文档里没看到的(也可能是有,但我看的不够仔细)

图片内容来源 《xml原理与应用》 夏天 编著

节点类型
结点类型结点的值结点的名称描 述
root该文档中的所有Text结点的内容按顺序合并后的结果代表一个XML文档的个根。该结点在树的最顶端,可以包含根element, comment 和 processor-instruction等类型的结点
element该元素下的所有Text结点(包含子结点的Text结点)的内容按顺序合并后的结果元素的标签名,如果含有名字空间前缀,也包含在内代表一个XML元素,element, text, comment 或processor-instruction等类型的结点
attribute属性的值属性名,如果含有名字空间前缀,也包含在内代表一个元素的属性
textText结点中包含的字符数据。代表一个元素的文本内容
comment注释的内容(不包含 )代表一个XML注释
processing-instruction跟在目标名之后的部分目标名代表一个XML处理指令
namespace名字空间URI名字空间前缀名代表一个XML名字空间
节点测试

节点测试用于确定轴中的节点。分为使用名称进行测试或使用类型进行测试。

1.使用名称进行节点测试

名称测试描述
结点名选择所有名为 结点名 的结点。
*选择除属性和名字空间以外的所有类型的结点。

示例

例子解释
child::brandA:product选择节点名为 brandA:product的所有孩子元索节点
child:brandB:*选择节点名的限定名称为brandB的所有孩子元素节点
attribute::*选择当前上下文节点的所有属性节点
child:*选择当前上下文节点的所有孩子元素节点

2.使用类型进行节点测试

类型标识符描述
text()选择所有文本结点。如果带参数,表示选择文本值为参数值的文本结点。
comment()选择所有注释结点。如果带参数,表示选择注释内容为参数值的注释结点
processing-instruction ( )选择所有processing-instruction 结点。如果带参数,表示选择目标名为参数值的processing-instruction 结点。
node()忽略类型,选择轴上的所有节点

示例

例子解释
child::text()选择文本子节点
/child::order/child:comment()选择order根元索节点的注释子节点
/child::order/child:node()选择order根元素节点的所有子节点,不考虑类型
/child::processing-instruction('xsl-stylesheet')选择根节点的处理指令子节点,且目标为'xsl-stylesheet'
路径缩写
完整形式缩写示例对应缩写示例
child::省略child::productproduct
attributc::@child::product/attribute::nameproduct/@name
self:node().self::node()/product./product
parent::node()..parent::node()/@name../@name
/descendant-or-self::node()////descendant-or-self::node()/product//product
[position()=数字][数字]child::product[position()==3]product[3]

以上大部分内容参考自《xml原理与应用》 夏天 编著 和一个 PPT课件 有删改

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/287907.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号