gpt4 book ai didi

xslt - xsl :for-each select=: two conditions

转载 作者:行者123 更新时间:2023-12-04 22:51:17 26 4
gpt4 key购买 nike

在 xsl 中,我们可以在循环中“为每个”编写两个条件。例如,而不是

<xsl:when test="/document/line[
(substring(field[@id='0'], 1,3)='MAR')
] and
/document/line[
contains(substring(field[@id='0'],123,4),'0010')
]">

我们可以这样写:
<xsl:for-each select="/document/line[
contains(substring(field[@id='0'], 1,3),'MAR')
] and
/document/line[
contains(substring(field[@id='0'],123,4),'0010')
]">

此致

评论更新
<xsl:for-each select="/document/line[
contains(substring(field[@id='0'], 1,3),'MAR')
and contains(substring(field[@id='0'],123,4),'0010')
]">

最佳答案

如果问题是“是否可以在 for-each 的选择属性中检查 2 个条件”,则答案是: .
因为

The expression must evaluate to a node-set. (from ZVON)



因此选择的数据类型必须是节点集而不是 bool 值。

但是,如果您想在 xsl:for-each 中选择两个节点集或 xsl:template (后者更好)等,可以使用 联合运算符 (|):
<xsl:for-each select="/document/line[
contains(substring(field[@id='0'], 1,3),'MAR')
] |
/document/line[
contains(substring(field[@id='0'],123,4),'0010')
]">

关于xslt - xsl :for-each select=: two conditions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5164870/

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