簡體   English   中英

XML XPath - 僅在滿足子條件時選擇父文本

[英]XML XPath - selecting parent text only if child condition is met

我正在開發一個項目,只有在子元素中存在title屬性時才需要從父元素獲取文本而不從死者獲取文本。

在下面的例子中,我需要從li元素中獲取文本'1999',當且僅當在子錨( li/i/a/@title )中存在title屬性時,這可能嗎? 提前致謝

這是我最初嘗試過的,但這不適用於我的用例... //ul/li/text()[last()] ,也試過//ul/li/text()

<ul>
  <li>
      <i>
        <a href="#apples" title="apples">
          Apples
        </a>
      </i> (1999)
  </li>
</ul>

這個XPath,

//li[.//a/@title]/text()[last()]

將返回具有@title屬性的后代a的那些li元素的最后一個文本節點子節點:

(1999)

按照要求。

信用 :根據Allan的有用建議,簡化[.//a[@title]][.//a/@title]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM