将字符串解析为xml并加载到文档变量中

时间:2014-12-08 15:27:04

标签: xml xslt xslt-1.0

我正在编写一个样式表来将未解析的HTML转换为XSl-FO。我将获得一个具有未解析的html的元素。我想将Comment的内容加载到文档变量中:

<Comment>&lt;div align="left"&gt;&lt;font size="4" color="#FF0000"&gt;This is &lt;i&gt;&lt;b&gt;&lt;u&gt;some &lt;/u&gt;&lt;/b&gt;&lt;/i&gt;sample html again&lt;/font&gt;&lt;br&gt;&lt;/div&gt;</Comment>

这将是这样的

<div align="left"><font size="4" color="#FF0000">This is <i><b><u>some </u></b></i>sample html again</font></div>

或格式化:

<div align="left">
    <font size="4" color="#FF0000">This is <i>
            <b>
                <u>some </u>
            </b>
        </i>sample html again</font>
</div>

尝试使用以下内容访问元素:

<xsl:variable name="html">
    <xsl:value-of select="Comment" disable-output-escaping="yes"/>
</xsl:variable>
<xsl:value-of select="$html//b"/>

但这当然不起作用。这可能是xslt 1.0吗?

1 个答案:

答案 0 :(得分:1)

不,这是不可能的。 Comment节点的内容是单个文本节点,其中包含(无意义的)字符串。没有&#34;子节点&#34; XPath可以选择。从字符串中提取信息的唯一方法是使用字符串函数。