如果满足xslt中的条件,则连接元素值
输入xml-如果满足xslt中的条件,则连接元素值,xslt,xslt-1.0,Xslt,Xslt 1.0,输入xml- <Term payInNumberOfDays=\"30\"> <Ext name=\"demo\">my</Ext> </Term> <Term payInNumberOfDays=\"0\"> <Ext name=\"demo\">value</Ext> </Term>
<Term payInNumberOfDays=\"30\">
<Ext name=\"demo\">my</Ext>
</Term>
<Term payInNumberOfDays=\"0\">
<Ext name=\"demo\">value</Ext>
</Term>
<Term payInNumberOfDays=\"0\">
<Ext name=\"demo\">100</Ext>
</Term>
我不知道扩展函数在做什么以及为什么需要变量,但在普通XSLT1.0中,您可以简单地使用
<xsl:apply-templates select="Term/Ext[@name = 'demo']"/>
然后
<xsl:template match="Ext">
<xsl:if test="position() > 1">-</xsl:if>
<xsl:value-of select="."/>
</xsl:template>
-
看
-
哪种转变
<root>
<Term payInNumberOfDays="30">
<Ext name="demo">my</Ext>
</Term>
<Term payInNumberOfDays="0">
<Ext name="demo">value</Ext>
</Term>
<Term payInNumberOfDays="0">
<Ext name="demo">100</Ext>
</Term>
</root>
我的
价值
100
进入
my-value-100
我不确定扩展函数在做什么,以及为什么需要变量,但在普通XSLT 1.0中,您可以简单地使用
<xsl:apply-templates select="Term/Ext[@name = 'demo']"/>
然后
<xsl:template match="Ext">
<xsl:if test="position() > 1">-</xsl:if>
<xsl:value-of select="."/>
</xsl:template>
-
看
-
哪种转变
<root>
<Term payInNumberOfDays="30">
<Ext name="demo">my</Ext>
</Term>
<Term payInNumberOfDays="0">
<Ext name="demo">value</Ext>
</Term>
<Term payInNumberOfDays="0">
<Ext name="demo">100</Ext>
</Term>
</root>
我的
价值
100
进入
my-value-100
我们能得到更简单的答案吗?@Neo:更简单?你一定是在开玩笑。您收到了一个基本的XSLT1.0答案,它不使用扩展函数。核心答案非常简单,并辅以示例输入、实际输出、演示链接和突出关键部分的主要摘要。你对一个更简单答案的简单要求毫无意义。@Neo:啊,我可能已经弄明白了你为什么认为这个答案不简单。看看阅读是否能帮助你克服对使用模式匹配和模板的反感,这两种方法更好,但对于习惯命令式编程的开发者来说似乎不那么简单。我们能得到更简单的答案吗?@Neo:更简单?你一定是在开玩笑。您收到了一个基本的XSLT1.0答案,它不使用扩展函数。核心答案非常简单,并辅以示例输入、实际输出、演示链接和突出关键部分的主要摘要。你对一个更简单答案的简单要求毫无意义。@Neo:啊,我可能已经弄明白了你为什么认为这个答案不简单。看看阅读是否能帮助你克服对使用模式匹配和模板的厌恶,这两种方法更好,但对于习惯命令式编程的开发人员来说似乎不那么简单。