• 直接指定值

    • 字符串: "Foo" 或者 'Foo' 或者 "It's \"quoted\"" 或者 'It\'s "quoted"' 或者 r"C:\raw\string"
    • 数字: 123.45
    • 布尔值: true, false
    • 序列: ["foo", "bar", 123.45]; 值域: 0..90..<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_casepath?ensure_starts_with('/')
  • 方法调用: repeat("What", 3)
  • 处理不存在的值:
    • 默认值: name!"unknown" 或者 (user.name)!"unknown" 或者 name! 或者 (user.name)!
    • 检测不存在的值: name?? 或者 (user.name)??
  • 赋值操作: =+=-=*=/=%=++--

参考原文 http://freemarker.foofun.cn/dgui_quickstart_basics.html

FreeMarker学习(常用表达式)的更多相关文章

  1. Freemarker的常用技巧总结

    Freemarker的常用技巧总结 Freemarker视频教程 1,截取字符串 有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度 < lt. ...

  2. [转] Freemarker的常用技巧总结

    1,截取字符串 有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度 < lt. <= lte. > gt. >= gte < ...

  3. FreeMarker学习教程

    copy自http://demojava.iteye.com/blog/800204 以下内容全部是网上收集: FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主 ...

  4. javaee_正则表达式基础和常用表达式

    正则基础: 1.1 -字符集 [ ] : 代表单个字符. [^] : 除了该字符外的所有单个字符. [a-zA-Z] : [a-z] || [A-Z]. [a-d[m-p]] :[a, d] || [ ...

  5. pandas学习(常用数学统计方法总结、读取或保存数据、缺省值和异常值处理)

    pandas学习(常用数学统计方法总结.读取或保存数据.缺省值和异常值处理) 目录 常用数学统计方法总结 读取或保存数据 缺省值和异常值处理 常用数学统计方法总结 count 计算非NA值的数量 de ...

  6. python学习——常用模块

    在学习常用模块时我们应该知道模块和包是什么,关于模块和包会单独写一篇随笔,下面先来了解有关在python中的几个常用模块. 一.什么是模块 常见的场景:一个模块就是一个包含了python定义和声明的文 ...

  7. Java8 新特性学习 Lambda表达式 和 Stream 用法案例

    Java8 新特性学习 Lambda表达式 和 Stream 用法案例 学习参考文章: https://www.cnblogs.com/coprince/p/8692972.html 1.使用lamb ...

  8. FreeMarker学习(常用指令)

    参考:http://freemarker.foofun.cn/dgui_quickstart_basics.html assign: 使用该指令你可以创建一个新的变量, 或者替换一个已经存在的变量 a ...

  9. C#开发学习——常用的正则表达式

    对于想学习正则表达式的童鞋,一些基础的语法啥的,可以参考 http://www.cnblogs.com/China3S/archive/2013/11/30/3451971.html 下边是一些我们常 ...

随机推荐

  1. TypeScript入门二:基本数据类型

    浅析基本数据类型 TypeScript类型解析 一.浅析基本数据类型 首先有一个问题TypeScript是一门编译型语言?还是解释性语言?显然已经不能被这两个分类来区分,TypeScript的并不是为 ...

  2. Linux学习(四)-Linux常用命令

    1.运行级别类 1.1运行级别说明: 0:关机 1:单用户[可用于找回丢失密码] 2:多用户状态没有网络服务 3:多用户状态有网络服务 4:系统未使用保留给用户 5:图形界面 6:系统重启 常用运行级 ...

  3. .NET 使用事物调用存储过程

    using System; using System.Collections.Generic; using System.Configuration; using System.Data; using ...

  4. springboot集成websocket的两种实现方式

    WebSocket跟常规的http协议的区别和优缺点这里大概描述一下 一.websocket与http http协议是用在应用层的协议,他是基于tcp协议的,http协议建立链接也必须要有三次握手才能 ...

  5. 【2】Kafka概念及原理

    1.Kafka背景 1.1.Kafka概要  Apache Kafka是一个开源的.轻量级的.分布式的.可分区的.可复制备份的.基于zookeeper协调管理的分布式流式消息系统.由Scala写成,支 ...

  6. 8. Object References, Mutability, and Recycling

    1. Variables Are Not Boxes # Think variables as sticky notes a = [1, 2, 3] b = a a.append(4) print b ...

  7. Python&Selenium自动化测试之PO设计模式

    一.摘要 Page Object模式,后面简称PO,他是一种设计思想,在上一章节中,曾经列举了一些在编写自动化测试过程中随着代码量的增加导致的大量代码难以维护.难以扩展.可读性极差等灾难性的事件:那么 ...

  8. 在MyEclipse10中使用Maven

    虽然很多人说maven比起gradle来已经又落后了,但还是有必要了解一下的. 这两天看了好多文章,也跟着做了很多例子,无一例外,创建的pom.xml文件都是有错的.而且由于使用的开发工具不一致,导致 ...

  9. vue store获取值时 Computed property "activeTag" was assigned to but it has no setter.

    出现原因: element-ui中 el-tab绑定的值在切换tab时会自动修改 而activeTag是从store中获取的值,不能直接修改 要添加给它绑定上set   <el-tabs cla ...

  10. CSS基础学习-15-1.CSS 浏览器内核