我不是程序员,但需要一些帮助来找到一种使用XSL在CDATA中显示XML内容的方法。例如,以下行:
<property id="instruction1" media="screen"><![CDATA[<p>Select the <span class="bold">option</span> you think is correct.</p>]]></property>
我只需要在<p></p>
标签之间显示文字,即Select the <span class="bold">option</span> you think is correct.
如果有办法排除粗体格式标签,那么它会显示为&#34; 选择您认为正确的选项。&#34;太棒了!
如果需要,我可以发布更多/所有XML代码。
非常感谢 尼尔
答案 0 :(得分:0)
使用纯XSLT 3.0(需要商业版的Saxon 9.5),您只需执行
即可<xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="property[@media = 'screen']">
<xsl:value-of select="parse-xml-fragment(.)"/>
</xsl:template>
</xsl:stylesheet>
使用property
解析parse-xml-fragment
元素的内容,然后只输出字符串值(这是剥离所有元素的方式,如p
和{{1} } element)。