Проблема подстроки шаблона скорости

У меня проблема с извлечением подстроки по скорости. у меня есть строка 1M/1Y (переменная строка здесь) мне нужно извлечь 1M и 1Y. Каков наилучший способ сделать это?

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

что я тут не так делаю?

3 ответа

Решение

В скоростном шаблоне у нас есть доступ ко всем открытым методам класса String. Попробуйте использовать приведенный ниже код

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

или вы также можете использовать $string.split("/") если вы используете Velocity 1.7

Вы можете использовать stringUtil:

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

Вы пропустили $ перед последней переменной index, это должно исправить ваш код:

#set($index=$string.index('/'))
#set($val=$string.substring($index,$index+2))
Другие вопросы по тегам