xslt:使用一个模板删除多个元素

时间:2013-04-26 18:46:17

标签: xslt

我在html中有一个文档,我正在转换为连续四个<br/>的xml。我只需要一个。将这4个转换为1的模板是什么?

1 个答案:

答案 0 :(得分:1)

假设您的模板是使用默认身份转换的推送方式编写的,只需匹配前面有br的任何br并且什么都不做。

<xsl:template match="br[preceding-sibling::*[1][self::br]]"/>

以下是完整样式表的示例:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:template match="@*|node()">
        <xsl:copy><xsl:apply-templates select="@*|node()"/></xsl:copy>
    </xsl:template>

    <xsl:template match="br[preceding-sibling::*[1][self::br]]"/>
</xsl:stylesheet>