2
我對XPath並不完全熟悉。我進行了廣泛的搜索,只爲眼前的孩子找到了解決方案。對於文檔中沒有文本節點後代的所有元素的Xpath?
要求是選擇一個沒有任何孩子,大孩子,盛大孩子或其家族樹中存在文本節點的子元素。
一個簡單的例子是: -
<div><p></p><p><span></span></p><p><span>notemptychild</span></p><p>notempty</p></div>
如果我運行下面的XPath查詢: -
//p[not(text())]
它提供了以下的輸出: -
Element='<p/>'
Element='<p>
<span/>
</p>'
Element='<p>
<span>notemptychild</span>
</p>'
(我使用freeformatter xpath工具:http://www.freeformatter.com/xpath-tester.html)
第一個元素是一個有效的選擇。
第二個元素是一個有效的選擇。
第三個元素不是有效的選擇,因爲p
的孩子span
中有一個文本節點。
我希望我沒有提出複雜的問題。
謝謝你。有用。我會盡快接受它。還有一個要求,我錯過了。這將選擇'
'而不是''。我怎樣才能讓這個XPath忽略任何空白文本節點。 –@OmarTariq:根據您的請求使用第二個XPath更新答案。 – kjhughes
謝謝你,非常感謝。 –