首页 文章

XPath根据childs子值选择元素返回多个值?

提问于
浏览
2

所以我在关注另一个问题的例子,我将在这里复制:

“试图根据其中一个孩子的孩子的 Value 选择一个元素”

./book[author/name = 'John']

“想要所有作者姓名='John'的书

Xml文件“

<list>
   <book>
      <author>
        <name>John</name>
        <number>4324234</number>
      </author>
      <title>New Book</title>
      <isbn>dsdaassda</isbn>
   </book>
   <book>...</book>
   <book>...</book>
</list>

现在,无论出于何种原因,当我使用上面的xpath时,它会选择book节点,但它会选择所有这些节点,而不仅仅是author = John的节点 . 有没有理由说xpath会忽略它并且只是拉动每个书节点?

我希望这是有道理的 . 谢谢!

1 回答

  • 2

    以下应该有效:

    /list/book[author/name/. = 'John']
    

    要么

    /list/book[author/name/text() = 'John']
    

相关问题