Freemarker函数

本文详细介绍了Freemarker模板引擎中各种内置函数的使用方法,包括字符串处理、数字运算、日期格式化等,以及如何自定义函数,帮助开发者更高效地进行模板渲染。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Freemarker定义了很多内置函数,用户也可以自定义函数,函数的调用使用?

字符串函数

substring:截取子字符串的函数,类似Java的String.substring字符串函数
$(“abcdef”?substring(n) } 截取字符串n位置开始到结尾,n大于等于0,小于等于字符串的长度
$(“abcdef”?substring(m,n) } 截取字符串m位置开始到n位置,m,n大于等于0,小于等于字符串的长度

cap_first: 一行文本的首字母大写
${“hello world ,I am java programer”?cap_first }

uncap_first: 一行文本的首字母小写
${“Hello world ,I am java programer”?uncap_first }

capitalize:每个单词首字母小写改大写,大写改小写
${“hello world ,I am java programer”?capitalize}

ends_with:判断字符串使用以某字符串结尾
${“hello world ,I am java programer”?ends_with(“programer”)?c}

starts_with:判断字符串使用以某字符串开头
${“hello world ,I am java programer”?starts_with(“hello”)?c}

index_of:返回某字符串第一次出现的位置
${“hello world ,I am java programer”?index_of(“am”)}

last_index_of:返回某字符串最后一次出现的位置
${“hello world ,I am java programer”?last_index_of(“am”)}

length:返回字符串的长度
${“hello world ,I am java programer”?length}

left_pad:左侧补齐空格或指定的字符
${“hello world ,I am java programer”?left_pad(10)}
如果left_pad(n) n小于字符串的长度,返回全部字符串
如果left_pad(n) n大于字符串的长度,左侧补充空格或指定字符串

${“hello world ,I am java programer”?left_pad(60,"*")}

right_pad:右侧补齐空格或指定的字符
${“hello world ,I am java programer”?right_pad(100,"*")}
如果right_pad(n) n小于字符串的长度,返回全部字符串
如果right_pad(n) n大于字符串的长度,右侧补充空格或指定字符串

contains:判断字符串中是否存在某字符串
${“hello world ,I am java programer”?contains(“am”)?c}

replace:替换字符串
${“hello world ,I am java programer”?replace(“I”,“you”)}

split:分隔字符串为数组

在这里插入图片描述
word_list:以任意多个空格分隔单词
在这里插入图片描述

数字函数

c : 将数字或boolean 转化为字符串

${1234?c} ${true?c}

string : 将数字转化为字符串

${123?string}

round: 四舍五入

${123.6?round}
${35.3?round}

floor:向下取整
${123.6?floor}
${35.3?floor}

ceiling:向上取整
${123.6?ceiling}
${35.3?ceiling}

日期函数

string(“yyyy-MM-dd”) :格式化日期
${.now?string(“yyyy-MM-dd HH:mm:ss”)}

date:获取当前日期
${.now?date}

time:获取当前时间
${.now?time}

datetime:获取当前日期时间
${.now?datetime}

布尔函数

转化boolean类型为字符串

${true?c}

${false?string(“no”,“yes”)}

序列函数

first:返回序列中第一个元素
last:返回序列中最后一个元素
seq_contains(n):判断序列中是否存在元素n
seq_index_of(n):返回n在序列中的位置
seq_last_index_of(n):返回n在序列中最后一个位置

在这里插入图片描述
reverse:返回序列的反序集合
sort:序列中元素排序
在这里插入图片描述
在这里插入图片描述
sort_by:用于hash表的排序,可以指明根据那个字段排序
在这里插入图片描述
chunk:把序列分成几个序列,可以指定填充元素
在这里插入图片描述

Hash函数

keys:获取Map的中键集合
在这里插入图片描述

自定义函数

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值