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

如何在XPath中编写带括号的布尔谓词实现多属性组合条件查询

核心结论

XPath 原生支持括号显式指定布尔运算优先级,完全不需要手动对查询返回的节点集做二次逻辑运算。

注意你给出的XML示例存在笔误:<Element>标签的第三个属性写为att3,和你描述的字段名attr3不一致,以下写法以你说明的三个字段名attr1/attr2/attr3为准,实际使用时如果你的XML里用的是att3,替换对应属性名即可。另外XPath的逻辑运算符固定为小写and/or,访问属性必须加@前缀,直接用你写的大写AND/OR、不加@会导致查询失败。

对应需求的XPath语句
  • 匹配规则( attr1="value1" AND attr2="value2" ) OR attr3="value3":
//Element[( @attr1="value1" and @attr2="value2" ) or @attr3="value3"]
  • 匹配规则( attr1="value1" OR attr2="value2" ) AND attr3="value3":
//Element[( @attr1="value1" or @attr2="value2" ) and @attr3="value3"]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 22:18:21