Xslt 在不影响转换输出的情况下缩进XSL
是否可以缩进xsl样式表而不影响输出纯文本文件中的空白量。我有Xslt 在不影响转换输出的情况下缩进XSL,xslt,Xslt,是否可以缩进xsl样式表而不影响输出纯文本文件中的空白量。我有 <xsl:output method="text" omit-xml-declaration="yes"/> 诸如此类 <xsl:template match="author"> <xsl:value-of select="@surname" /> <xsl:if test="count(g)>1">, <xsl:for-each select
<xsl:output method="text" omit-xml-declaration="yes"/>
诸如此类
<xsl:template match="author">
<xsl:value-of select="@surname" />
<xsl:if test="count(g)>1">, <xsl:for-each select="g">
<xsl:value-of select="substring(.,1,1)" />.<xsl:if test="position()!=last()">\,</xsl:if></xsl:for-each>
</xsl:if>
</xsl:template>
,
.\,
但是我想把代码格式化为
<xsl:template match="author">
<xsl:value-of select="@surname" />
<xsl:if test="count(g)>1">,
<xsl:for-each select="g">
<xsl:value-of select="substring(.,1,1)" />.
<xsl:if test="position()!=last()">\,</xsl:if>
</xsl:for-each>
</xsl:if>
</xsl:template>
,
.
\,
但是,这不起作用,因为保留了一些空白,这会导致目标程序出现问题。您可以使用
xsl:text
包装要输出的纯文本
<xsl:template match="author">
<xsl:value-of select="@surname" />
<xsl:if test="count(g)>1">
<xsl:text>,</xsl:text>
<xsl:for-each select="g">
<xsl:value-of select="substring(.,1,1)" />
<xsl:text>.</xsl:text>
<xsl:if test="position()!=last()">
<xsl:text>\,<xsl:text>
</xsl:if>
</xsl:for-each>
</xsl:if>
</xsl:template>
,
.
\,
您可以使用xsl:text
包装要输出的纯文本
<xsl:template match="author">
<xsl:value-of select="@surname" />
<xsl:if test="count(g)>1">
<xsl:text>,</xsl:text>
<xsl:for-each select="g">
<xsl:value-of select="substring(.,1,1)" />
<xsl:text>.</xsl:text>
<xsl:if test="position()!=last()">
<xsl:text>\,<xsl:text>
</xsl:if>
</xsl:for-each>
</xsl:if>
</xsl:template>
,
.
\,
您可以使用xsl:text
包装要输出的纯文本
<xsl:template match="author">
<xsl:value-of select="@surname" />
<xsl:if test="count(g)>1">
<xsl:text>,</xsl:text>
<xsl:for-each select="g">
<xsl:value-of select="substring(.,1,1)" />
<xsl:text>.</xsl:text>
<xsl:if test="position()!=last()">
<xsl:text>\,<xsl:text>
</xsl:if>
</xsl:for-each>
</xsl:if>
</xsl:template>
,
.
\,
您可以使用xsl:text
包装要输出的纯文本
<xsl:template match="author">
<xsl:value-of select="@surname" />
<xsl:if test="count(g)>1">
<xsl:text>,</xsl:text>
<xsl:for-each select="g">
<xsl:value-of select="substring(.,1,1)" />
<xsl:text>.</xsl:text>
<xsl:if test="position()!=last()">
<xsl:text>\,<xsl:text>
</xsl:if>
</xsl:for-each>
</xsl:if>
</xsl:template>
,
.
\,
只有在下列条件之一适用时,样式表中的空白才有效:
xsl:text
元素中xml:space=“preserve”
属性只有当下列条件之一适用时,样式表中的空白才有效:
xsl:text
元素中xml:space=“preserve”
属性只有当下列条件之一适用时,样式表中的空白才有效:
xsl:text
元素中xml:space=“preserve”
属性只有当下列条件之一适用时,样式表中的空白才有效:
xsl:text
元素中xml:space=“preserve”
属性它会吞下所有其他空格(不在xsl:text中)吗?@user877329-所有其他空格现在都不重要了,因为所有元素现在要么包含元素,要么包含文本;不是两者都有。这允许处理器忽略此空白,因为它不是实际输出的一部分。它会吞下所有其他空白(不在xsl:text中)吗?@user877329-所有其他空白现在都不重要,因为所有元素现在都包含元素或文本;不是两者都有。这允许处理器忽略此空白,因为它不是实际输出的一部分。它会吞下所有其他空白(不在xsl:text中)吗?@user877329-所有其他空白现在都不重要,因为所有元素现在都包含元素或文本;不是两者都有。这允许处理器忽略此空白,因为它不是实际输出的一部分。它会吞下所有其他空白(不在xsl:text中)吗?@user877329-所有其他空白现在都不重要,因为所有元素现在都包含元素或文本;不是两者都有。这允许处理器忽略此空白,因为它不是实际输出的一部分。