使用XSLT转义HTML实体

时间:2011-11-01 13:42:03

标签: xslt escaping entity

我的XSL模板中有外部脚本结果,包含转义的html特殊字符。我如何使用XSLT将其转换为最终文档?

我已经逃过了结果,disable-output-escaping="yes"无法帮助我。

例如(外部脚本的结果):

<!--376473658726587-->
<a href="/">some text</a>

1 个答案:

答案 0 :(得分:4)

此转化

<xsl:stylesheet version="1.0"
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output method="text"/>
 <xsl:strip-space elements="*"/>

 <xsl:template match="script">
  &lt;script>
    <xsl:value-of select="normalize-space()"/>
  &lt;/script>
 </xsl:template>
</xsl:stylesheet>

应用于此XML文档(您未能提供!!!):

<script>
&lt;!--376473658726587--&gt;
&lt;a href="/"&gt;some text&lt;/a&gt;
</script>

生成想要的正确结果

  <script>
    <!--376473658726587--> <a href="/">some text</a>
  </script>