我有一个像这样的XML文件 -
<item>
<item>
<tag>value</tag>
<tag2>value</tag2>
</item>
</item>
我想提取内部标记,使其看起来像这样 -
<item>
<tag>value</tag>
<tag2>value</tag2>
</item>
这可以通过XSLT实现吗?
外部<item>
和</item>
保证是XML文档的第一行和最后一行,如果有帮助的话。
答案 0 :(得分:2)
如果你想提取叶子元素(那些没有自己子元素的元素),那么就像
那样简单<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/*">
<xsl:copy>
<xsl:copy-of select="descendant::*[not(*)]" />
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
将完成这项工作。
答案 1 :(得分:1)
<xsl:template match="/">
<xsl:copy-of select="//item[not(item)]"/>
</xsl:template>
提取那些不包含其他item
元素的item
元素。