gpt4 book ai didi

xml - xpath - 具有属性问题的谓词

转载 作者:行者123 更新时间:2023-12-03 17:26:19 25 4
gpt4 key购买 nike

我有一个值,我试图将其缩减为 4 个字符,该值包含在具有 WEIGHT 属性的 xml 子元素中。

  <addinfo>
<info type="COMMODITY_CODE">39253000</info>
<info type="WEIGHT">0.04700</info>
</addinfo>

完整路径为 documents/invoice/detailline/addinfo/info type="WEIGHT"
我的模板说:
  <xsl:template match="documents/invoice/detailline/addinfo/info[@type='WEIGHT']">
<xsl:element name="{name()}" namespace="{namespace-uri()}">
<xsl:value-of select="substring(., '0', '5')" />
</xsl:element>

它应该将值 0.04700 减少到总共 4 个字符 (0.47)。相反,它正在这样做,但也消除了类型属性“WEIGHT”。

转换输出:
  <addinfo>
<info type="COMMODITY_CODE">39253000</info>
<info>0.04</info>
</addinfo>

最佳答案

它正在做你要求它做的事情:创建一个具有相同名称的元素,并将修剪后的值放入其中。包括type结果中的属性,您可以复制它:

<xsl:template match="documents/invoice/detailline/addinfo/info[@type='WEIGHT']">
<xsl:element name="{name()}" namespace="{namespace-uri()}">
<xsl:copy-of select="@*" />
<xsl:value-of select="substring(., 1, 4)" />
</xsl:element>
</xsl:template>

仅供引用, substring() 中的编号(以及 XPath 中的大多数其他内容)从 1 开始,第二个和第三个参数是数字,而不是字符串。我已经在上面修复了。

关于xml - xpath - 具有属性问题的谓词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44432796/

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