我们可以将特定的标记保留在父标记中,并删除xslt1.0中的所有其他标记吗



假设我有如下数据:

<caption>
<p> some data </p>
<b> bold data </b>
<i> italic data </i>
<a href=""> link data </a> 
<u> underline data </u>
<ul>
<li>ul list data</li>
</ul>  
<ol>
<li>ol list data</li>
</ol>
</caption>

我希望输出为:

<caption>
some data 
<b> bold data </b>
<i> italic data </i>
<a href=""> link data </a> 
<u> underline data </u>
ul list data
ol list data
</caption>

我想删除标题标签中的所有标签,除了粗体斜体下划线和锚定标签。提前谢谢。

使用要保留标签的标识模板:

<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>

以及在其他情况下丢弃标签的变体:

<xsl:template match="p|ul|ol|li">
<xsl:apply-templates/>
</xsl:template>

最新更新