XSLT 限制字符串的字符数并替换为额外的复杂性

XSLT Limit number of characters on string and replace with extra complication

我是 XSLT 的新手。 我正在编写一条规则,当文本超过 240 时限制字符串中的字符,然后替换为字符 1 到 237,最后添加“...”。 这不是问题,直到现在使用这个:

<xsl:choose>
<xsl:when test="string-length(sensei_local_short_description) > 240">
    <xsl:value-of select="substring(sensei_local_short_description, 1, 237)" />...
</xsl:when>
<xsl:otherwise>
    <xsl:value-of select="sensei_local_short_description" />
</xsl:otherwise>
</xsl:choose>
<App_Data App="SVOD" Name="Summary_Short" Value="{sensei_local_short_description}"/>
<App_Data App="SVOD" Name="Summary_Long" Value="{sensei_local_short_description}"/>

我面临的问题是,我需要那个有限版本才能达到 "Summary Short" 的值。现在我有 3 个输出值:

仅限有限摘要短版例外的文本 + 应用数据完整摘要短版 + 应用数据完整摘要长版

我想在输出上以此为目标(两个 App Data 值:1 个减少,1 个完整)

(App_Data 值="Dora en Boots zijn bij Diego in het dierenopvangcentrum, waar ze kennismaken met Baby Beer, het beste vriendje van Baby Jaguar. Baby Jaguar en Baby Beer zijn samen met een bal aan het spelen, maar dan komt Zwieber en die probeert de bal ... " 名称="Summary_Short" 应用程序="SVOD"/>

App_Data 值="Dora en Boots zijn bij Diego in het dierenopvangcentrum, waar ze kennismaken met Baby Beer, het beste vriendje van Baby Jaguar. Baby Jaguar en Baby Beer zijn samen met een bal aan het spelen, maar dan komt Zwieber en die probeert de bal te stelen. " 名称="Summary_Long" 应用程序="SVOD"/>

希望您能理解。由于缺乏技术术语,我对此很陌生。

感谢您的宝贵时间和帮助

我猜 (!) 你想做类似的事情:

<App_Data App="SVOD" Name="Summary_Short">
    <xsl:attribute name="Value">
        <xsl:choose>
            <xsl:when test="string-length(sensei_local_short_description) > 240">
                <xsl:value-of select="substring(sensei_local_short_description, 1, 237)" />
                <xsl:text>...</xsl:text>
            </xsl:when>
            <xsl:otherwise>
                <xsl:value-of select="sensei_local_short_description" />
            </xsl:otherwise>
        </xsl:choose>           
    </xsl:attribute>
</App_Data>
<App_Data App="SVOD" Name="Summary_Long" Value="{sensei_local_short_description}"/>

收到如下结果:

   <App_Data App="SVOD" Name="Summary_Short" Value="Dora en Boots zijn bij Diego in het dierenopvangcentrum, waar ze kennismaken met Baby Beer, het beste vriendje van Baby Jaguar. Baby Jaguar en Baby Beer zijn samen met een bal aan het spelen, maar dan komt Zwieber en die probeert de bal ..."/>
   <App_Data App="SVOD" Name="Summary_Long" Value="Dora en Boots zijn bij Diego in het dierenopvangcentrum, waar ze kennismaken met Baby Beer, het beste vriendje van Baby Jaguar. Baby Jaguar en Baby Beer zijn samen met een bal aan het spelen, maar dan komt Zwieber en die probeert de bal te stelen. "/>

这是一个上下文相关的工作演示:
http://xsltransform.net/94hvTz8