我想在 freemarker 中将字符串转换为数字。我想根据数字的值进行一些条件检查。 ?号码似乎不起作用。
有什么建议吗?
抱歉,
?number
工作正常。我无法将转换后的数字与另一个数字进行比较。
这对我不起作用:
<#assign num = numString?number>
<#if num > 100>
</#if>
当我将(num > 100)括在括号内时,它起作用了:
<#if (num > 100)>
</#if>
由于比较不起作用,我假设转换没有发生。 我的错。
在您的代码中,您使用闭括号,因此 freemarker 正在评估
<#if num >
你应该使用
<#if num gt 100>
本文档末尾有关 if 语句的内容对此进行了讨论 https://freemarker.apache.org/docs/ref_directive_if.html
这对某些人有效而不对其他人有效的原因是因为括号,这也在文档底部进行了解释
我想你可以这样使用它:
string?eval
使用以下代码
<#if num?string > 100?string>
</#if>
它对我有用。