Freemarker <compress>标签也在$ {}内修剪数据

时间:2015-06-29 05:16:44

标签: freemarker

我有这样的代码:

FTL:

// a declaration mentioning inline     
inline int max(int a, int b);

// a definition mentioning inline  
inline int max(int a, int b) {  
  return a > b ? a : b;  
}

输入是XML Nodemodel xml元素的数据如下:ID_234 567_89 处理时,输出为:&#34; ID_234 567_89&#34; 234和567之间的三个空白区域被修剪为一个空白区域,并且在值的末尾丢失了所有空白区域。 我需要它的价值:&#34; ID_234 567_89&#34; 当我删除标签时,无论newFactory.setIgnoringElementContentWhitespace(true)如何,它都按预期工作。

为什么标签修剪数据来自$ {}? 请帮忙。

1 个答案:

答案 0 :(得分:0)

您可以简单地替换手动不需要的字符(在以下示例选项卡,回车符和换行符中),例如。

${doc["root/uniqCode"]?replace("[\\t\\r\\n]", "", "rm")}

请参阅?替换内置字符串:http://freemarker.org/docs/ref_builtins_string.html#ref_builtin_replace