【发布时间】:2011-04-30 18:50:54
【问题描述】:
在 XSLT 2 样式表中
如果简单的布尔表达式只有 0, 1, and, or, (, ) 记号 包含在字符串变量中。
比如何得到表达式的最终值。 同时我还需要使用 tokenize()、replace() 函数。
这里有一些 xslt 2 处理器在 Ubuntu 上也支持 exslt:evaluate() 吗? Saxon、Xalan、xsltproc 我试过,但 Xalan、xsltproc 不支持 tokenize() 和 replace()。 也不确定 evaluate()。
<xsl:template name="test">
<xsl:variable name="nexpression" select="myfun:getexpr()"/>
<!-- return boolean exp like "0 or (1 and 1) or 1" -->
<xsl:value-of select="exslt:evaluate($nexpression)"/>
</xsl:template>
这里 myfun:getexpr() 返回简单的布尔表达式。
或者这里其他方法到这个布尔表达式的最终值。
【问题讨论】: