freemarker 内置函数
一、Sequence的内置函数
1.     sequence?first 返回sequence的第一个值。
2.     sequence?last  返回sequence的最后一个值。
3.     sequence?reverse 将sequence的现有顺序反转,即倒序排序
4.     sequence?size    返回sequence的大小
5.     sequence?sort    将sequence中的对象转化为字符串后顺序排序
6.     sequence?sort_by(value) 按sequence中对象的属性value进行排序
二、Hash的内置函数
1.hash?keys 返回hash里的所有key,返回结果为sequence
2.hash?values 返回hash里的所有value,返回结果为sequence
例如:
<#assign user={“name”:“hailang”, “sex”:“man”}>
<#assign keys=user?keys>
<#list keys as key>
${key}=${user[key]}
</#list>

三、 操作字符串函数
1.substring(start,end)从一个字符串中截取子串
start:截取子串开始的索引,start必须大于等于0,小于等于end
end: 截取子串的长度,end必须大于等于0,小于等于字符串长度,如果省略该参数,默认为字符串长度。
例子:
${‘str’?substring(0)}à结果为str
${‘str’?substring(1)}à结果为tr
${‘str’?substring(2)}à结果为r
${‘str’?substring(3)}à结果为
${‘str’?substring(0,0)}à结果为
${‘str’?substring(0,1)}à结果为s
${‘str’?substring(0,2)}à结果为st
${‘str’?substring(0,3)}à结果为str

2.cap_first 将字符串中的第一个单词的首字母变为大写。
${‘str’?cap_first}à结果为Str

3.uncap_first将字符串中的第一个单词的首字母变为小写。
${‘Str’?cap_first}à结果为str

4.capitalize将字符串中的所有单词的首字母变为大写
${‘str’? capitalize}à结果为STR

5.date,time,datetime将字符串转换为日期
例如:
<#assign date1=”2009-10-12”?date(“yyyy-MM-dd”)>
<#assign date2=”9:28:20”?time(“HH:mm:ss”)>
<#assign date3=” 2009-10-12 9:28:20”?time(“HH:mm:ss”)>
${date1}à结果为2009-10-12
${date2}à结果为9:28:20
${date3}à结果为2009-10-12 9:28:20
注意:如果指定的字符串格式不正确将引发错误。

6.ends_with 判断某个字符串是否由某个子串结尾,返回布尔值。
${“string”?ends_with(“ing”)?string} 返回结果为true
注意:布尔值必须转换为字符串才能输出

7.html 用于将字符串中的<、>、&和“替换为对应得&lt;&gt;&quot:&amp

8.index_of(substring,start)在字符串中查找某个子串,返回找到子串的第一个字符的索引,如果没有找到子串,则返回-1。
Start参数用于指定从字符串的那个索引处开始搜索,start为数字值。
如果start大于字符串长度,则start取值等于字符串长度,如果start小于0, 则start取值为0。
${“string”?index_of(“in”) à结果为3
${“string”?index_of(“ab”) à结果为-1

9.length返回字符串的长度 ${“string”?length}à结果为6

10.lower_case将字符串转为小写
${“STRING”?lower_case}à结果为string

11.upper_case将字符串转为大写
${“string”?upper_case}à结果为STRING

12.contains 判断字符中是否包含某个子串。返回布尔值
${“string”?contains(“ing”)?string} à结果为true
注意:布尔值必须转换为字符串才能输出

13.number将字符串转换为数字
${“111.11”?number}à结果为111.11

14.replace用于将字符串中的一部分从左到右替换为另外的字符串。
${“strabg”?replace(“ab”,”in”)} à结果为string

15.split使用指定的分隔符将一个字符串拆分为一组字符串
<#list “This|is|split”?split(“|”) as s>
${s}
</#list>
结果为:
This
is
split

16.trim 删除字符串首尾空格 ${“  String ”?trim} à结果为String

四、操作数字
1.c 用于将数字转换为字符串
${123?c} à结果为123
2.string用于将数字转换为字符串
Freemarker中预订义了三种数字格式:number,currency(货币)和percent(百分比)其中number为默认的数字格式转换
例如:
<#assign tempNum=20>
${tempNum}
${tempNum?string.number}或${tempNum?string(“number”)} à结果为20
${tempNum?string.currency}或${tempNum?string(“currency”)} à结果为¥20.00
${tempNum?string. percent}或${tempNum?string(“percent”)} à结果为2,000%

五、    操作布尔值
string 用于将布尔值转换为字符串输出
true转为“true”,false转换为“false”
foo?string(“yes”,”no”)如果布尔值是true,那么返回“yes”,否则返回no

转载于:https://www.cnblogs.com/quanyj/p/3414228.html

freemarker 内置函数相关推荐

  1. Freemarker 内置函数 数字、字符串、日期格式化用法介绍

    在用FreeMarker过程中,感觉FreeMarker的字符串,日期,集合等处理能力还是很强大的,上网搜了一些资料,整理如下,以便能帮助大家更熟练的应用Freemarker完成项目开发. 一.Seq ...

  2. Freemarker内置函数使用

    在Freemarker应用中经常会遍历List获取需要的数据,并对需要的数据进行排序加工后呈现给用户. 那么在Freemarker中如何遍历List,并对List中数据进行适当的排序呢? 一. Fre ...

  3. 04.Beetl常用内置函数以及安全输出---《Beetl视频课程》

    本期视频实现了三个功能,模糊搜索.标签分类.登录/注销功能: 内容简介:使用了常用内置函数,以及安全输出,实现了上面提到的三个业务 一起学beetl目录:https://my.oschina.net/ ...

  4. java beetl 视频_04.Beetl常用内置函数以及安全输出---《Beetl视频课程》

    本期视频实现了三个功能,模糊搜索.标签分类.登录/注销功能: 内容简介:使用了常用内置函数,以及安全输出,实现了上面提到的三个业务 作者:GK 常用内置方法 date 返回一个java.util.Da ...

  5. Python 常用内置函数map、zip、filter、reduce、enumerate

    Python 中有许多非常实用的内置函数,通过这些函数我们可以方便的实现某些功能,下面就列举一些常用的内置函数. 1. map() 函数 map() 可以根据提供的函数对指定序列做映射,它接受一个函数 ...

  6. 2021年大数据Hive(五):Hive的内置函数(数学、字符串、日期、条件、转换、行转列)

    全网最详细的Hive文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 系列历史文章 前言 Hive的内置函数 一.数学函数 1. 取整函数: round ...

  7. python3 内置函数map 返回的迭代器转为列表

    python3 内置函数map 返回的是迭代器,python2 返回的才是列表, 在python3中想要使用需要把迭代器在转换成列表 list_a = [1, 2, 3, 4, 5]def add(n ...

  8. Python Day26:多态、封装、内置函数:__str__、__del__、反射(反省)、动态导入模块...

    ## 多态 ```python OOP中标准解释:多个不同类型对象,可以响应同一个方法,并产生不同结果,即为多态 多态好处:只要知道基类使用方法即可,不需要关心具体哪一个类的对象实现的,以不变应万变, ...

  9. 13装饰器和内置函数

    装饰器 # 1.装饰用的工具# import time #内置函数计算函数运行时间 # print(time.time())# import time # def func(): # start_ti ...

最新文章

  1. 10个你值得收藏的牛逼开源后台控制面板
  2. 《微博营销》——微博能为你做什么
  3. matlab 二次指数平滑法预测
  4. TypeScript学习笔记2:数据类型
  5. MySQL服务端的登录和退出
  6. memcache/memcached/memcachedb 配置、安装(转)
  7. 将Spock 1.3测试迁移到Spock 2.0
  8. Linux 命令之 touch -- 创建文件
  9. Docker for Windows 中文文档(3)——Docker Settings
  10. Codeforces Round #243 (Div. 1)
  11. im2col函数解析
  12. Wilcoxon符号秩+秩和检验学习[转载]
  13. r语言如何计算t分布临界值_[统计]从p-value到q-value的计算(附代码)
  14. Vue地图导航调用百度地图
  15. 兰州拉面进非洲:一群80后的创业历险
  16. Android解包打包system img的方法
  17. 用于Keras极端罕见事件分类的LSTM自动编码器
  18. 请求转发与重定向到底有哪些区别?
  19. 精选收集50个计算机热门视频教程免费下载[原创]
  20. 服务器上怎么安装软件系统安装,怎么在云服务器上安装软件

热门文章

  1. GetDlgItem的用法
  2. c++ 图片验证码识别_基于tensorflow 实现端到端的OCR:二代身份证号识别
  3. python 写入网络视频文件很慢_OpenCV视频写入详解_Python,视频保存0kb问题
  4. 字节流和字符流复制文件内容实例
  5. springboot 启动类注解 @SpringBootApplication 和 @ComponentScan 的问题
  6. 019_html超链接
  7. pycharm没有python interpreter_首次安装Pycharm出现No Python interpreter selected解决方法
  8. Java基础:JDK、JRE、JVM的区别与联系
  9. pythonunbuffered_python所遇到的坑
  10. 把java当爱好_(观点)如果把爱好做成职业 把职业做成事业