XPath语言

XPath语言

XPath语言是一门专门用于在XML文档中查找信息的语言,可以与其他XML解析工具来结合,使用路径表达式来选取XML文档中的节点或者节点集

XPath节点

XPath中的节点类别有

  • XML 文档根节点
  • 元素节点
  • 属性节点
  • 处理指令节点
  • 注释节点
  • 命名空间节点
  • 文本节点

语法

XPath语言使用路径表达式来定位XML文档中的节点或节点集

每个XPath表达式是由多个步组成的,多个步之间用斜线分隔

如/mapper/resultMap/id表示的是mapper根元素下resultMap子元素中包含的id子元素

步的语法

步由三部分组成,其语法格式为

轴::节点测试[限定谓语]

用于定义所选节点与当前节点之间的结构关系,如父子、后代等

ancestor选取当前节点的所有先辈(父、祖父等)。
ancestor-or-self选取当前节点的所有先辈(父、祖父等)以及当前节点本身。
attribute选取当前节点的所有属性,可用@符号代替
child选取当前节点的所有子元素,默认轴,可省略
descendant选取当前节点的所有后代元素(子、孙等),可用//代替
descendant-or-self选取当前节点的所有后代元素(子、孙等)以及当前节点本身。
following选取文档中当前节点的结束标签之后的所有节点。
namespace选取当前节点的所有命名空间节点。
parent选取当前节点的父节点,可用…代替
preceding选取文档中当前节点的开始标签之前的所有节点。
preceding-sibling选取当前节点之前的所有同级节点。
self选取当前节点,可用.代替
节点测试

用于选取指定轴内部的部分节点

nodename从指定轴匹配所有节点中选出具有nodename的节点
node()选择指定轴匹配的所有类型的节点
text()选择指定轴匹配的所有文本类型的节点
comment()选择指定轴匹配的所有注释节点
processing-instruction选择指定轴匹配的所有处理指令节点
*节点测试的通配符,用于指定不对指定轴进行任何过滤
限定谓语

用于对轴和节点测试所匹配的节点集进行进一步限定,每个步中可以接受零个或多个限定谓语,放在方括号中,限定谓语是一个boolean表达式

child:book[position()=1]

https://zhhll.icu/2022/xml/XPath/

本文由mdnice多平台发布

posted @   拾光师  阅读(18)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示