gpt4 book ai didi

xml - 在XSLT中解析字符串

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

我正在XSLT中执行for-each循环,并且返回了很长的字符串。我想做的就是解析字符串。

这是代码。

<xsl:for-each select="/CAudioFile/CRI/PrivateData/PrivateData/DictionaryEntry">
<xsl:value-of select="Value" />
</xsl:for-each>


这是它返回的字符串:

9702195481, 31201(CCC AGENT)09999051221399561274822396000069522


我想要做的是将第一个部分放在一个变量中:

9702195481, 31201(CCC AGENT)


并用分号代替逗号。

第二个字符串从第一个字符串的末尾开始,为20个字符。所以它会回来

09999051221399561274


我尝试了 substring,但是出现编译器错误。

关于如何实现此目标的任何建议?

这是源xml和xslt文件。

XML and XSLT File

这是屏幕快照,它是现在的样子以及我想要的格式。

The format I want Image

我实际上更希望此生成CSV,但是我的格式不正确,这就是为什么我坚持使用HTML。

最佳答案

如果您不想以连接所有DictionaryEntry / Values的长字符串结尾,则不要这样做:

<td>
<xsl:for-each select="CAudioFile/CRI/PrivateData/PrivateData/DictionaryEntry">
<xsl:value-of select="Value" />
</xsl:for-each>
</td>


请尝试:

<td>
<xsl:value-of select="translate(CAudioFile/CRI/PrivateData/PrivateData/DictionaryEntry[1]/Value, ',', ';')" />
<xsl:value-of select="CAudioFile/CRI/PrivateData/PrivateData/DictionaryEntry[2]/Value" />
</td>


也许:

<td>
<xsl:value-of select="translate(CAudioFile/CRI/PrivateData/PrivateData/DictionaryEntry[Key='CD1']/Value, ',', ';')" />
<xsl:value-of select="CAudioFile/CRI/PrivateData/PrivateData/DictionaryEntry[Key='CD2']/Value" />
</td>

关于xml - 在XSLT中解析字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24086639/

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