使用freemarker将字符串中的最后2个字符大写?

时间:2011-12-27 21:09:52

标签: java string freemarker

我有一个freemarker变量,${string}可以是任意长度。我如何才能将最后两个字符大写? 感谢

1 个答案:

答案 0 :(得分:4)

您可以在字符串上使用upper_case builtinsequence slicing并编写类似

的FTL函数
<#function foo text>
  <#local len = text?length />
  <#if (len>2)>
    <#return text[0..len-3] + text[len-2..]?upper_case> 
  <#else>
    <#return text?upper_case>
  </#if>
</#function>

然后是FTL表达式

${foo("foobar")}

生成字符串foobAR