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

如何编写多条件多层级XPath从XML中提取DocIDAutoNumerator值

正确XPath语句

//Document[.//Field[Code='DocumentTypeValue' and Value='1319'] and .//ActivityTime[contains(normalize-space(.), '2021-08-11')]]//Field[Code='DocIDAutoNumerator']/Value

逻辑说明

  1. 定位所有<Document>节点,对每个节点做两个条件校验:
  • 节点后代存在<Field>节点,其<Code>值为DocumentTypeValue且<Value>值为1319
  • 节点后代存在<ActivityTime>节点,去除首尾空白字符后包含指定日期2021-08-11(加normalize-space是为了兼容XML中节点值前后多余空格的情况)
  1. 对满足条件的<Document>节点,直接查找后代中<Code>为DocIDAutoNumerator的<Field>节点的<Value>值即可。

测试说明

用你提供的示例XML测试时不会返回结果,因为示例中没有同时满足两个条件的<Document>:第一个<Document>日期符合要求但文档类型值为4008,第二个文档类型值符合要求但日期为1993-08-11,调整测试数据后即可验证逻辑正确性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 09:45:03