gpt4 book ai didi

xslt - 如何修复一些损坏的标签

转载 作者:行者123 更新时间:2023-12-02 01:23:34 25 4
gpt4 key购买 nike

我的输入中有一些损坏的标签,我想在我的 xslt 中修复这些标签。我已经搜索并尝试了不同的东西,但我似乎无法弄清楚。

输入:

<p>Some text <span class="italic">broken </span><span class="italic">tag</span><span class="italic">s</span> in my content which is <span class="italic">really </span><span class="italic">annoying</span>.</p>

期望的输出:

<p>Some text <span class="italic">broken tags</span> in my content which is <span class="italic">really annoying</span>.</p>

有人可以帮助我朝着正确的方向前进吗?

最佳答案

以下内容适用于您的示例,但对于其他情况可能不够通用。

XSLT 2.0

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

<!-- identity transform -->
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>

<xsl:template match="p">
<xsl:copy>
<xsl:for-each-group select="node()" group-adjacent="string(@class)">
<xsl:choose>
<xsl:when test="current-grouping-key()">
<span class="{current-grouping-key()}">
<xsl:apply-templates select="current-group()/node()"/>
</span>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="current-group()"/>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each-group>
</xsl:copy>
</xsl:template>

</xsl:stylesheet>

关于xslt - 如何修复一些损坏的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38541918/

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