FreeMarker小记(一)

FreeMarker小记(一)

直接指定值
字符串: “Foo” 或者 ‘Foo’ 或者 “It’s “quoted”” 或者 ‘It’s “quoted”’ 或者 r"C:\raw\string"
数字: 123.45
布尔值: true, false
序列: [“foo”, “bar”, 123.45]; 值域: 0…9, 0…<10 (或 0…!10), 0…
哈希表: {“name”:“green mouse”, “price”:150}
检索变量
顶层变量: user
从哈希表中检索数据: user.name, user[“name”]
从序列中检索数据: products[5]
特殊变量: .main
字符串操作
插值(或连接): “Hello ${user}!” (或 "Hello " + user + “!”)
获取一个字符: name[0]
字符串切分: 包含结尾: name[0…4],不包含结尾: name[0…<5],基于长度(宽容处理): name[0…*5],去除开头: name[5…]
序列操作
连接: users + [“guest”]
序列切分:包含结尾: products[20…29], 不包含结尾: products[20…<30],基于长度(宽容处理): products[20…*10],去除开头: products[20…]
哈希表操作
连接: passwords + { “joe”: “secret42” }
其他操作
算术运算: (x * 1.5 + 10) / 2 - y % 100
比较运算: x == y, x != y, x < y, x > y, x >= y, x <= y, x lt y, x lte y, x gt y, x gte y, 等等。。。。。。
逻辑操作: !registered && (firstVisit || fromEurope)
内建函数: name?upper_case, path?ensure_starts_with(’/’)
方法调用: repeat(“What”, 3)
处理不存在的值:
默认值: name!“unknown” 或者 (user.name)!“unknown” 或者 name! 或者 (user.name)!
检测不存在的值: name?? 或者 (user.name)??
赋值操作: =, +=, -=, *=, /=, %=, ++, –
转义序列含义
"引号 (u0022)
单引号(又称为撇号) (u0027)
{起始花括号:{
\反斜杠 (u005C)
\n换行符 (u000A)
\r回车 (u000D)
\t水平制表符(又称为tab) (u0009)
\b退格 (u0008)
\f换页 (u000C)
\l小于号:<
\g大于号:>
\a&符:&
\xCode字符的16进制 Unicode 码 (UCS 码)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值