You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用XPath中的逻辑与运算符筛选值?附XML示例

用XPath逻辑与运算符筛选XML节点的实现方法

没问题,我来帮你搞定这个需求!针对你提供的XML结构,我们可以通过XPath的**逻辑与(and)**运算符来精准筛选同时满足多个条件的<resource>节点,下面给你详细的实现方案和示例:

基础语法说明

XPath里实现“同时满足多个条件”有两种常用写法,效果完全一致,你可以根据习惯选择:

  • 显式使用and关键字连接多个条件
  • 用多个方括号[]依次叠加条件(隐式逻辑与,多个条件需同时成立)

结合你的XML实例的具体示例

先把你提供的XML节点结构再明确下(方便对照):

示例1:筛选同时满足parentID为1701且nodeName为facebook的节点

用and关键字的写法:

//resource[@parentID="1701" and @nodeName="facebook"]

用多括号的写法:

//resource[@parentID="1701"][@nodeName="facebook"]

这两个表达式都会精准匹配到你提供的那个<resource>节点。

示例2:筛选creatorName为Scott且updateDate在2018年4月的节点

如果需要匹配属性值的部分内容,可以结合contains()函数,比如要找更新时间在2018年4月的节点:

//resource[@creatorName="Scott" and contains(@updateDate, "2018:04")]

示例3:筛选level为3且nodeType为1705的节点

//resource[@level="3" and @nodeType="1705"]

注意事项

  • 属性值的引号:XPath支持单引号和双引号,如果你要筛选的属性值本身包含其中一种引号,记得换用另一种,比如属性值是Scott's resource,就写成@creatorName='Scott's resource'会报错,应该用@creatorName="Scott's resource"
  • 节点层级://resource会匹配XML中所有层级的<resource>节点,如果你的XML有嵌套结构,只想找根节点下的直接子节点,可以写成/root/resource(替换成你的实际根节点名称)

内容的提问来源于stack exchange,提问作者DanielJ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:48:56