速度模板子字符串问题

Velocity template substring issue

我在提取速度子串时遇到问题。 我的字符串是 1M/1Y(这里是变量字符串) 我需要提取 1M 和 1Y。 最好的方法是什么?

#set($index=$string.index('/'))
#set($val=$string.substring($index,index+2))

我做错了什么?

在 velocity 模板中,我们可以访问字符串 class 的所有 public 方法。 尝试使用下面的代码

#set ($index = $string.indexOf('/'))
#set ($val1= $string.substring(0, $index))
#set ($index = $index + 1)
#set ($val2 = $string.substring($index))

或者如果您使用的是 Velocity 1.7

,您也可以使用 $string.split("/")

您可以使用 stringUtil:

#set($parts = $stringUtil.split($string, "/"))
$parts.get(1)
$parts.get(2)
....

您在最后一个 'index' 变量之前遗漏了 $,这应该可以修复您的代码:

#set($index=$string.index('/'))
#set($val=$string.substring($index,$index+2))