【问题标题】:How to use XPath expression to find element in an array如何使用 XPath 表达式在数组中查找元素
【发布时间】:2014-05-30 11:50:55
【问题描述】:

我的 xml 文件和节点中几乎没有相同类型的元素,我需要使用的出现次数例如

<xml>
  <iteration>3</iteration>
  <myElement>123</myElement>
  <myElement>456</myElement> 
  <myElement>789</myElement>
  <myElement>012</myElement>
</xml>

现在我需要选择第三个(迭代节点的文本)myElement 节点。如何使用 XPath 做到这一点? 我试过了

(/xml/myElement)[/xml/iteration/text()] 

但它不起作用。有可能吗?

当然预期结果是 789

【问题讨论】:

  • 建议的答案不适合我的问题。元素的索引是动态的,我需要在之前将其转换为数字

标签: xml xpath


【解决方案1】:

将迭代的值转换为number,然后再将其用作索引器,即

/xml/myElement[number(/xml/iteration/text())]

【讨论】:

  • 谢谢!所以很棒:)
【解决方案2】:

similar question

你能试试这个吗: /xml/myElement[position()=/xml/iteration/text()]?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-20
    • 2014-12-09
    相关资源
    最近更新 更多