【问题标题】:How can I select the xpath parent sibling? [closed]如何选择 xpath 父兄弟? [关闭]
【发布时间】:2017-04-13 19:35:33
【问题描述】:

如果我有这个 xml 结构:

<tr>
    <td class="name">
        <b>Brand</b>
    </td>
    <td class="desc">Intel</td>
</tr>
<tr>
    <td class="name">
        <b>Series</b>
    </td>
    <td class="desc">Core i5</td>
</tr>
<tr>
    <td class="name">
        <b>Cores</b>
    </td>
    <td class="desc">4</td>
</tr>

name == Series 时如何获取“desc”值?

我在这里遵循了另一个示例 How to select following sibling/xml tag using xpath

但是,该示例没有围绕“名称”值的标签,因此跟随兄弟在该级别不起作用。如何回到关卡?

【问题讨论】:

  • 给定的文本根本不是 XML。投票结束问题。
  • 我原来的帖子说“xml 结构”。投票否决

标签: xml xpath xquery siblings


【解决方案1】:

你不需要兄弟轴。

这个 XPath,

string(//tr[normalize-space(td[@class='name'])='Series']/td[@class='desc'])

将选择

Core i5

根据要求用于您的 XML。

【讨论】:

  • 谢谢!我不知道可以这样做。这是否也处理 标签?我没有看到对它的引用。
  • 是的,它将自动处理任何bi 等,因为它测试元素的字符串值而不是测试文本节点。详情请见Testing text() nodes vs string values in XPath
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多