【发布时间】:2019-02-05 07:41:11
【问题描述】:
输入xml- 父节点 Block 重复出现三次。我需要完全删除重复的节点,即使它在同一个 xml 中出现超过 7 次而不创建新的 xml
<Blocks>
<Block>
<Name>Table</Name>
<Value>wood</Value>
</Block>
<Block>
<Name>Chair</Name>
<Value>Plastic</Value>
</Block>
<Block>
<Name>Table</Name>
<Value>wood</Value>
</Block>
<Block>
<Name>Table</Name>
<Value>wood</Value>
</Block>
</Blocks>
执行后:
<Blocks>
<Block>
<Name>Table</Name>
<Value>wood</Value>
</Block>
<Block>
<Name>Chair</Name>
<Value>Plastic</Value>
</Block>
</Blocks>
【问题讨论】:
-
嗯,你知道这是
Block元素与那两个孩子Name和Value元素你需要消除?那么这是一个简单的分组问题,您可以使用 XSLT 3 中的xsl:for-each-group select="Block" composite="yes" group-by="Name, Value"或 XSLT 2 中的xsl:for-each-group select="Block" group-by="concat(Name, '|', Value)"来解决。