-1
我有一個XML文檔,我試圖選擇具有不同值的節點,並刪除了前導空格和尾隨空格。Xpath獲取具有不同值的節點(刪除尾隨和前導空格)
我使用以下Xpath
和它工作:
ROW[COUNTRY[not(text() = following::ROW/COUNTRY[text()])]]
但是,當我在上面xpath
使用normalize-space(text())
然後返回的結果是不正確的。
XML:
<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
<ROW>
<COUNTRY>
<![CDATA[USA]]>
</COUNTRY>
</ROW>
<ROW>
<COUNTRY>
<![CDATA[ USA]]>
</COUNTRY>
</ROW>
</ROOT>
XSLT:
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" indent="yes" />
<xsl:template match="@*|node()">
<xsl:apply-templates select="@*|node()" />
</xsl:template>
<xsl:template match="ROW[COUNTRY[not(normalize-space(text()) = following::ROW/COUNTRY[normalize-space(text())])]]">
<tr>
<xsl:value-of select="normalize-space(./COUNTRY)"></xsl:value-of>
</tr>
</xsl:template>
</xsl:transform>
你應該包括在這個實際中使用的XML和XSL問題,而不是鏈接到它。如果鏈接停止運行,這將使這個問題和答案在未來更有價值。 –