删除 <li> 标签内的 p 标签 xslt 1
Delete p tag inside <li> tags xslt 1
我需要删除 <p> tags inside <li>
标签。
示例:
<ul><li id="62592d802d9bf64743a6103f"> <p> <u> <strong>WHAT IS CARRER DEVELOPMENT PLAIN ?</strong> </u> </p> </li></ul>
期望的输出:
<ul><li id="62592d802d9bf64743a6103f"><u> <strong>WHAT IS CARRER DEVELOPMENT PLAIN ?</strong> </u></li></ul>
提前致谢。
您可以使用以下 XSLT-1.0 模板。 Identity Template 只是按原样复制所有元素。第二个模板的作用基本相同,但没有复制当前元素(此处仅针对 <p>
元素)。
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/>
<!-- Identity template -->
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="p[ancestor::li]">
<xsl:apply-templates select="@*|node()"/>
</xsl:template>
</xsl:stylesheet>
如果您还想删除 spaces/prettify 输出,请在 top-level 处添加以下行(就在 xsl:stylesheet
之后):
<xsl:strip-space elements="*" />
我需要删除 <p> tags inside <li>
标签。
示例:
<ul><li id="62592d802d9bf64743a6103f"> <p> <u> <strong>WHAT IS CARRER DEVELOPMENT PLAIN ?</strong> </u> </p> </li></ul>
期望的输出:
<ul><li id="62592d802d9bf64743a6103f"><u> <strong>WHAT IS CARRER DEVELOPMENT PLAIN ?</strong> </u></li></ul>
提前致谢。
您可以使用以下 XSLT-1.0 模板。 Identity Template 只是按原样复制所有元素。第二个模板的作用基本相同,但没有复制当前元素(此处仅针对 <p>
元素)。
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/>
<!-- Identity template -->
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="p[ancestor::li]">
<xsl:apply-templates select="@*|node()"/>
</xsl:template>
</xsl:stylesheet>
如果您还想删除 spaces/prettify 输出,请在 top-level 处添加以下行(就在 xsl:stylesheet
之后):
<xsl:strip-space elements="*" />