删除标签包含特定值
问题描述:
我想删除包含值的记录“()Z()”和空标签, 输入XML:删除标签包含特定值
<R>
<B_01>
<C_01_02>()z()</C_01_02>
<C_01_03>()z()</C_01_03>
<C_01_04>()z()</C_01_04>
<C_01_05>()z()</C_01_05>
<B_01_01>
<C_01_01_01>()z()</C_01_01_01>
<C_01_01_02>()z()</C_01_01_02>
</B_01_01>
</B_01>
<B_01>
<C_01_01>1116</C_01_01>
<C_01_02>0</C_01_02>
<C_01_03>1944-01-01T00:00:00</C_01_03>
<B_01_01>
<C_01_01_01>1900001761</C_01_01_01>
<M_01_01_01>0</M_01_01_01>
<M_01_01_01>1</M_01_01_01>
<M_01_01_02/><M_01_01_03/>
</B_01_01>
<M_01_01/>
<M_01_02/>
<M_01_03/>
<T1_01_01>ARNAUD</T1_01_01>
<T1_01_02>JEAN MARIE</T1_01_02>
</B_01>
</R>
我试过很多scirpts但事与愿违工作
谢谢你的帮助
答
也许这一个?
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output omit-xml-declaration="no" indent="no"/>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<!--xsl:template match="*[not(text()) or text() = '()z()']"/-->
<xsl:template match="*[not(node()) or text() = '()z()']"/> <!-- better -->
</xsl:stylesheet>
Does http://stackoverflow.com/questions/6648679/removing-empty-tags-from-xml-via-xslt help? –