【问题标题】:Convert line break in XML to space with XSLT使用 XSLT 将 XML 中的换行符转换为空格
【发布时间】:2021-09-19 21:47:44
【问题描述】:

我有一些格式不正确的 XML 文件,其中可能包含元素内的换行符。例如:

<para> This is a
text with random
breaklines </para>

我的问题是,当使用 XSLT 将其转换为 HTML 时,xml 中由换行符分隔的单词实际上是连接的。

<p> This is atext with randombreaklines </p>

我希望能够在 XML 中的换行符处插入空格字符? 这可能吗?

【问题讨论】:

    标签: html xml xslt


    【解决方案1】:

    您显示的结果可以使用:

    <xsl:template match="para"> 
        <p>
            <xsl:value-of select="translate(., '&#10;', ' ')"/>
       </p>
    </xsl:template>
    

    您可能更喜欢使用:

            <xsl:value-of select="normalize-space(.)"/>
    

    为了生产:

    <p>This is a text with random breaklines</p>
    

    也就是说,我不明白你为什么需要做任何事情。一个简单的:

            <xsl:value-of select="."/>
    

    将导致:

    <p> This is a
    text with random
    breaklines </p>
    

    任何浏览器都会呈现为:

    如果您看到不同的结果,那么您的问题中肯定有一些其他因素未提及。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-11-30
      • 2016-08-24
      • 1970-01-01
      • 2019-02-02
      • 1970-01-01
      • 2023-04-09
      • 1970-01-01
      相关资源
      最近更新 更多