`
eric_hwp
  • 浏览: 126662 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

freemaker 操作

 
阅读更多
freemaker操作字符串
分类: 模板引擎 2012-03-16 09:41 141人阅读 评论(0) 收藏 举报
操作字符串函数 

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

分享到:
评论

相关推荐

    Freemarker操作字符串

    它在Java平台上广泛应用于Web开发,可以与Spring MVC等框架结合,用于生成视图层的...在阅读《FreeMarkerDemo》项目中的代码,你会更深入地理解这些概念,并可能发现更多关于FreeMarker操作字符串的技巧和最佳实践。

    freemarker操作手册-完整freemarker教程

    通过阅读《freemarker操作手册》提供的完整教程,你可以系统地学习到以上所有内容,并结合实践,熟练掌握Freemarker的使用技巧。无论是初学者还是经验丰富的开发者,这份手册都是深入理解和应用Freemarker不可或缺的...

    freemarker 操作指南(完全版)

    这份"Freemarker操作指南(完全版)"包含了所有关于Freemarker的详细操作文档,是初学者掌握和进阶Freemarker的宝贵资料。 在开始学习之前,我们先了解Freemarker的基本概念。Freemarker是一个模板引擎,它允许...

    FreeMarker模版PPT

    FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具 在简单的HTML中加入了一些由${…}包围的特定代码,这些特定代码是FreeMarker的指令,而包含FreeMarker的指令的文件就称为模板(Template)

    访问FreeMarker的工具类

    `FreeMarkerUtils`是简化FreeMarker操作的实用工具类,通过封装FreeMarker的核心功能,使得开发者能更方便地使用模板引擎。理解并熟练运用`FreeMarkerUtils`,可以帮助我们高效地构建动态内容生成系统,提升开发效率...

    SpringBoot_Freemarker生成Word_多个表格+两层嵌套循环

    SpringBoot_Freemarker生成Word_多个表格+两层嵌套循环; 步骤说明: 1.用Microsoft Office Word打开word原件;将文档中需要动态生成的内容,替换为属性名 ${name} 2.另存为,选择保存类型Word 2003 XML 文档(*....

    freemarker 自定义freeMarker标签

    本篇将深入探讨如何自定义FreeMarker标签,以扩展其功能并适应特定项目需求。 首先,理解FreeMarker的默认标签语法至关重要。FreeMarker使用${...}表达式来插入变量,#{...}用于输出注释,以及、等控制结构进行条件...

    开源模版引擎FreeMarker的介绍与实践.ppt

    组内培训用的ppt,网上down的,又修改了部分。

    FreeMarker手册-Freemarker 2.3.18

    FreeMarker 2.3.18是该引擎的一个版本,它提供了一系列的更新和改进,以提高性能和易用性。 1. **模板语言基础** FreeMarker的模板语言是一种声明式的编程方式,它允许开发者通过简单的标记语法来控制输出。这些...

    freemarker-2.3.23jar

    4. **函数和方法**:Freemarker支持自定义函数和方法,可以使用内置的函数库,如字符串操作、数学计算等,也可以扩展自定义函数来满足特定需求。 5. **模板继承和导入**:通过`&lt;#import&gt;`和`&lt;#extends&gt;`,模板可以...

    freemarker-2.3.28.jar

    10. **函数和方法调用**: FTL中可以调用Java方法,这使得模板能够直接访问和操作Java对象的方法。 这个"freemarker-2.3.28.jar"文件可能是Eclipse插件的一部分,意味着它可以方便地在Eclipse环境中配置和使用...

    freemarker

    在提供的代码片段中,`FreemarkerUtil`类封装了Freemarker的基本操作,包括模板的获取、数据模型的处理以及输出到流或文件。其中`getTemplate`方法负责模板的加载,而`print`和`fprint`方法分别用于输出到控制台和...

    FreeMarker2.3.23官方中文文档

    6. **安全机制**:FreeMarker有防止跨站脚本(XSS)攻击的安全特性,可以设置模板的安全模式,限制模板执行某些可能带来安全风险的操作。 7. **模板缓存**:为了提高性能,FreeMarker可以缓存编译后的模板,减少...

    freemarker_lastest最新最全--文档+安装包+操作手册

    在本压缩包中,你将找到关于Freemarker的最新完整资源,包括文档、安装包以及操作手册,以下是对这些内容的详细解释: 1. **freemarker-2.3.23.jar**:这是Freemarker的核心库文件,包含了所有Freemarker运行所需的...

    freemarker-2.3.22

    这些对象可以在模板中通过点号`.`操作符访问属性。 3. **模板设计**:Freemarker支持条件语句、循环、包含其他模板等功能,使得模板设计灵活且易于维护。 4. **缓存机制**:Freemarker有内置的模板缓存,可以提高...

    java中freemarker实现对word的操作

    本篇文章将深入探讨如何利用FreeMarker在Java环境中实现对Word文档的操作。 一、FreeMarker简介 FreeMarker是一个基于模板的语言,其主要目标是将数据模型与展示逻辑分离。在Java应用中,开发者通常会创建一个数据...

    freemarker+itext生成PDF

    为了实际操作,你需要理解FreeMarker的模板语言,比如 `${}` 用于输出变量,`&lt;#if&gt;` 和 `&lt;#foreach&gt;` 用于条件和循环等。同时,也需要熟悉Itext的API,例如`Document`、`Paragraph`、`Font`等类的用法。 在实践中,...

    velocity和freemarker的比较

    它有丰富的内置函数和操作符,对模板的处理效率高。 - **应用场景**:FreeMarker广泛应用于Spring MVC框架,以及邮件生成、报表生成等需要动态渲染模板的场合。 **两者的比较** - **语法**:Velocity的语法相对...

    Velocity 和 FreeMarker区别

    - **FreeMarker**支持更灵活的数据绑定方式,能够轻松地访问和操作Java对象的属性。 - **Velocity**的数据绑定功能虽然不如FreeMarker强大,但在简单应用中已经足够。 8. **模板继承与包含**: - **FreeMarker**...

Global site tag (gtag.js) - Google Analytics