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

如何编写多条件Java XPath查询,提取XML中符合要求的投票人员名单

合并条件的XPath查询语句

你可以直接使用以下语句一次性完成所有条件的匹配:

//Vote.Result[Vote.text/a[contains(., 'A9-309')]]/Results.Against/Group[@Identifier='XYZ']/Group.member/text()

逻辑拆解

  • 首先用方括号筛选出对应目标决议的Vote.Result节点:只有节点下的Vote.text/a包含A9-309的投票结果才会被保留
  • 从筛选后的投票结果节点出发,定位到反对票集合Results.Against
  • 再筛选反对票集合中标识为XYZ的小组
  • 最后提取该小组下所有成员的姓名文本

针对你给出的样例XML,执行该语句会直接返回结果Theresa,和预期匹配。
另外你之前写的查询//Vote.Result/Results.Against/[@Identifier='XYZ']/Group.member/text()存在小语法错误:@Identifier是Group节点的属性,不能直接接在Results.Against节点后面,上述正确语句已经修正了这个问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 14:12:02