0

在 XSLT 中执行了normalize-space并且做得不好,它不是一个空格是一个不可见的字符。

元素

<div class='tyreNameComplete'> WinterContact TS800 </div>

XSLT:

translate(//x:div[@class='tyreNameComplete'], ' ', '')

带有奇怪字符的元素:

&#10;            WinterContact TS800 &#10;            &#10;            &#10;                &#10;                    &#10;                    &#10;                &#10;                &#10;            &#10;        

性格是:&#10;没戏。

我希望结果是:

WinterContact TS800

我需要清理才能得到你需要的东西。你会如何看待这种情况?谢谢。

解决方案:

translate(//x:div[@class='tyreNameComplete'], '&#10; ', '')

后包含不可见字符&#10;,以在 linux 终端中查看可视化文件并将字符复制到我的 xslt 中。

4

1 回答 1

1

使用此源 XML:

<element>&#10;            WinterContact TS800 &#10;            &#10;            &#10;                &#10;                    &#10;                    &#10;                &#10;                &#10;            &#10;        </element>

这个模板:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:template match="/">
        <collapsed><xsl:value-of select="normalize-space(element)"/></collapsed>
    </xsl:template>
</xsl:stylesheet>

我得到这个输出:

<collapsed>WinterContact TS800</collapsed>

这似乎是你想要的?

于 2013-04-16T15:02:00.577 回答