Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xslt 在不影响转换输出的情况下缩进XSL_Xslt - Fatal编程技术网

Xslt 在不影响转换输出的情况下缩进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)&gt;1">, <xsl:for-each select

是否可以缩进xsl样式表而不影响输出纯文本文件中的空白量。我有

<xsl:output method="text" omit-xml-declaration="yes"/>

诸如此类

<xsl:template match="author">
    <xsl:value-of select="@surname" />
    <xsl:if test="count(g)&gt;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)&gt;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)&gt;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)&gt;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)&gt;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)&gt;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-所有其他空白现在都不重要,因为所有元素现在都包含元素或文本;不是两者都有。这允许处理器忽略此空白,因为它不是实际输出的一部分。