You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过XSLT在<use_arg_label>标签前后添加空格?

嘿,刚接触XSLT对吧?别担心,这个小问题很好解决~

你之前的模板是直接把<use_arg_label/>替换成了空格,现在要保留这个标签同时在它前后加上空格,只需要调整一下匹配use_arg_label的模板就行。核心思路是保留原节点本身,同时在它的前后插入空格。

给你一个完整的XSLT示例:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <!-- 默认模板:复制所有未被特殊处理的节点和属性,保证其他内容原样输出 -->
  <xsl:template match="@*|node()">
    <xsl:copy>
      <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
  </xsl:template>

  <!-- 专门处理use_arg_label节点:前后加空格,同时保留节点本身 -->
  <xsl:template match="use_arg_label">
    <xsl:text> </xsl:text>
    <xsl:copy/>
    <xsl:text> </xsl:text>
  </xsl:template>
</xsl:stylesheet>

简单解释下:

  • 第一个模板是XSLT里的“默认兜底模板”,它会复制所有你没有单独写模板处理的节点和属性,这样<short_desc>这类标签和其他文本都会原样保留。
  • 第二个模板专门匹配use_arg_label:先输出一个空格,然后用<xsl:copy/>把原节点完整复制出来(也就是保留<use_arg_label/>标签),最后再输出一个空格。这样替换后,原来的Hello<use_arg_label/>World就会变成Hello <use_arg_label/> World,完全符合你的需求~

内容的提问来源于stack exchange,提问作者Rajat Khanna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:20:20