gpt4 book ai didi

xml - XSL返回仅包含匹配子项的节点

转载 作者:行者123 更新时间:2023-12-03 17:06:30 24 4
gpt4 key购买 nike

如果我有一个看起来像这样的XML节点

<node name="a">
<element ref="bb" />
<element ref="cc" />
<element ref="prefix_dd" />
<element ref="prefix_ee" />
</node>


我想写一个XSLT返回

<node name="a">
<element ref="prefix_dd" />
<element ref="prefix_ee" />
</node>

最佳答案

可能是最短的此类转换之一:

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>

<xsl:template match="node()[not(@ref[not(starts-with(.,'prefix_'))])]|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>


当应用于提供的XML文档时:

<node name="a">
<element ref="bb" />
<element ref="cc" />
<element ref="prefix_dd" />
<element ref="prefix_ee" />
</node>


所需的正确结果产生了:

<node name="a">
<element ref="prefix_dd"/>
<element ref="prefix_ee"/>
</node>


说明:修改后的身份规则。

关于xml - XSL返回仅包含匹配子项的节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7430823/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com