xslt - 如何在单循环中读取 2 个逗号分隔的字符串 - XSLT
问题描述
我有以下两个变量,它们在不同的 XSLT 变量中有多个逗号分隔的字符串值
Variable_01 : 88888,777777
Variable_02 : abc,xyz
现在我正在寻找以下输出
[{"Group":"88888", "Name":"abc"},{"Group":"777777", "Name":"xyz"}]
您能帮我上面输出的正确 XSLT 代码吗?
解决方案
这是您可以查看的一种方式:
XSLT 2.0
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" encoding="UTF-8"/>
<xsl:variable name="Variable_01">88888,777777</xsl:variable>
<xsl:variable name="Variable_02">abc,xyz</xsl:variable>
<xsl:template match="/">
<xsl:text>[</xsl:text>
<xsl:for-each select="tokenize($Variable_01, ',')">
<xsl:variable name="i" select="position()"/>
<xsl:text>{"Group":"</xsl:text>
<xsl:value-of select="." />
<xsl:text>", "Name":"</xsl:text>
<xsl:value-of select="tokenize($Variable_02, ',')[$i]" />
<xsl:text>"}</xsl:text>
<xsl:if test="position()!=last()">
<xsl:text>,</xsl:text>
</xsl:if>
</xsl:for-each>
<xsl:text>]</xsl:text>
</xsl:template>
</xsl:stylesheet>
结果
[{"Group":"88888", "Name":"abc"},{"Group":"777777", "Name":"xyz"}]
演示:http: //xsltransform.hikmatu.com/jyH9rLV
推荐阅读
- javascript - 在 POST 请求中获取 webhook 数据,然后在 React 中使用这些数据
- reactjs - 为什么移动浏览器不显示模态视图?
- r - 是否可以使用 bookdown 防止创建 epub 和 pdf 版本的书籍?
- delphi-7 - Indy IdFtp - 网络连接被本地系统中止
- javascript - 在 addEventListener 范围内的 removeListener 不起作用
- random-forest - 使用默认的“randomForest”算法进行分类时,为什么终端节点数与案例数不匹配?
- php - 如何使用OO检查两个哈希是否相等
- google-apps-script - 谷歌表格 - 替换单元格中的第二个字母
- c++ - 动态数组和指针表示法
- php - 在收到字段后尝试将我的 PHP 表单重定向到另一个页面时出现错误