输出的XSLT条带空间=文本

时间:2013-08-27 22:09:13

标签: xml json xslt

我正在使用XSLT将XML文档转换为JSON。 XML文件中有一些内容如下所示:

  <Date>
Thursday, November 8th
</Date>

当我将字符串放入JSON解析器时,空间中断会受到伤害。如果它以“

”的形式进入,那将会更好

<Date>Thursday, November 8th</Date>

我认为一个可能有用的解决方案是在输出标记后添加以下内容:

 <xsl:output method="text" omit-xml-declaration="yes" />
  <xsl:strip-space elements="*" />
  <xsl:template match="/message">
     <xsl:variable name="date"><xsl:value-of select="Date"/></xsl:variable>

不幸的是,这不会影响我的输出,并且在添加以下内容时仍会添加额外的空间:

 {
   "date": "<xsl:value-of select="$date"/>"
 }

它仍然最终解析了空格和换行符,这会破坏JSON解析器。

有解决方法吗?

1 个答案:

答案 0 :(得分:1)

使用normalize-space

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