gpt4 book ai didi

xslt - XSLT-如何删除重复的空元素?

转载 作者:行者123 更新时间:2023-12-03 17:14:09 27 4
gpt4 key购买 nike

我有以下的XML片段代码:

<para>
<break/>
<break/>
<break/>
<break/> Text1<break/>
<break/> Text2<break/>
<break/>
<break/>
<break/>
<break/>
</para>


我需要获得以下信息:

 <para>
<br>
Text1
<br>
Text2
<br>
</para>


我写了XSLT:

<xsl:template match="/">
<html><body><xsl:apply-templates /></body></html>
</xsl:template>
<xsl:template match="para">
<p><xsl:apply-templates /></p>
</xsl:template>
<xsl:template match="break">
<xsl:if test="following-sibling::break and .='' ">
<br><xsl:apply-templates /></br>
</xsl:if>
</xsl:template>


但这是行不通的。你能帮助我吗?

最佳答案

您请求的输出无效(<br>元素未关闭)。假设您想要获得类似的东西:

<p>
<br/> Text1<br/> Text2<br/>
</p>


尝试:

<xsl:strip-space elements="*"/>

...

<xsl:template match="para">
<p>
<br/>
<xsl:apply-templates select="text()" />
</p>
</xsl:template>

<xsl:template match="para/text()">
<xsl:copy/>
<br/>
</xsl:template>

关于xslt - XSLT-如何删除重复的空元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24676532/

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