使用XSLT在HTML标记内提取文本

时间:2017-11-07 21:35:45

标签: html xml xslt xslt-1.0 xalan

我有一个XML文件,其中包含一些带有html标签的CDATA。示例:

<TextElement>
  <Data>
    <![CDATA[ <h2>My Header Text</h2> ]]>
  </Data>
</TextElement>

我需要能够显示没有H2标签的“我的标题文本”。

谢谢!

1 个答案:

答案 0 :(得分:0)

使用

<xsl:param name="start-tag"><![CDATA[<h2>]]></xsl:param>
<xsl:param name="end-tag"><![CDATA[</h2>]]></xsl:param>

然后是substring-after(substring-before组合

<xsl:template match="Data">
  <xsl:value-of select="substring-before(substring-after(., $start-tag), $end-tag)"/>
</xsl:template>

应该这样做。 http://xsltransform.net/naZXpY6