【问题标题】:Extract text inside HTML tags using XSLT使用 XSLT 提取 HTML 标记内的文本
【发布时间】:2017-11-07 21:35:45
【问题描述】:

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

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

我需要能够在没有 H2 标记的情况下显示“我的标题文本”。

谢谢!

【问题讨论】:

  • 你知道内容是单个h2元素,纯文本内容,没有子元素吗?您使用哪种 XSLT 1 处理器?
  • 你试过用 xslt 解决这个问题吗?请将您尝试过的内容添加到您的问题中。
  • @MartinHonnen 是的,内容将始终是单个 h2 标签,没有子元素。我将 Xalan 用于我的 XSLT 处理器。

标签: html xml xslt xslt-1.0 xalan


【解决方案1】:

使用

<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.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-26
    • 2015-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多