我想修剪所有XHTML段落末尾的尾部空白。我正在使用Ruby與REXML庫。使用XPath:查找根節點下每個段落的最後一個文本節點
說,在有效的XHTML文件我有以下幾點:
<p>hello <span>world</span> a </p>
<p>Hi there </p>
<p>The End </p>
我想這結束了:
<p>hello <span>world</span> a</p>
<p>Hi there</p>
<p>The End</p>
所以我想我可以使用XPath獲取只是文本我想要的節點,然後修剪文本,這將允許我結束我想要的(之前)。
我開始與以下XPath:
//root/p/child::text()
當然,這裏的問題是,它返回的都是P標籤的所有子文本節點。這是這樣的:
'hello '
' a '
'Hi there '
'The End '
嘗試下面的XPath給我的最後一段,而不是爲根節點的孩子的每個段落的最後文本節點的最後文本節點。
//root/p/child::text()[last()]
這隻回報:因此'The End '
我想從XPath來得到的是:
' a '
'Hi there '
'The End '
我能做到這一點使用XPath?或者我應該看看使用正則表達式(這可能比XPath更令人頭疼)?
雖然只得到最後一個結果,但他希望在整個文檔 – Jake 2008-11-03 04:08:15
中的所有文字都沒有,它提供了他要求的確切數據集。它返回每個p的最後一個子文本元素(在這個例子中是三個) – nickf 2008-11-03 04:12:50