問題描述:
之前一直是用下面方式,進行數字格式化,然而這次出錯了
$
問題原因:
所要格式化的資料的資料型別有關係:
之前一直是double型別,這次的是string型別的數字了..
用下的方式先進行型別轉換,再進行格式化
$
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進行排序
注意:sequence不能為null
二、hash的內建函式
1. hash?keys 返回hash裡的所有key,返回結果為sequence
2. hash?values 返回hash裡的所有value,返回結果為sequence
例如:<#assign user=>
<#assign keys=user?keys>
<#list keys as key>
$=$#list>
三、操作字串函式
1. substring(start,end)從乙個字串中擷取子串
start:擷取子串開始的索引,start必須大於等於0,小於等於end
end: 擷取子串的長度,end必須大於等於0,小於等於字串長度,
如果省略該引數,預設為字串長度。
例子:$ 結果為str
$ 結果為tr
$ 結果為r
$ 結果為
$ 結果為
$ 結果為s
$ 結果為st
$ 結果為str
2. cap_first 將字串中的第乙個單詞的首字母變為大寫。
$ 結果為str
3. uncap_first將字串中的第乙個單詞的首字母變為小寫。
$ 結果為str
4. capitalize將字串中的所有單詞的首字母變為大寫
$ 結果為str
5.date,time,datetime將字串轉換為日期
例如:<#assign date1=」2009-10-12」?date(「yyyy-mm-dd」)>
<#assign date2=」9:28:20」?datetime(「hh:mm:ss」)>
<#assign date3=」 2009-10-12 9:28:20」?datetime(「hh:mm:ss」)>
$ 結果為2009-10-12
$ 結果為9:28:20
$ 結果為2009-10-12
9:28:20
注意:如果指定的字串格式不正確將引發錯誤。
6. ends_with 判斷某個字串是否由某個子串結尾,返回布林值。
$ 返回結果為true
注意:布林值必須轉換為字串才能輸出
7. html 用於將字串中的<、>、&和「替換為對應得<>":&
8. index_of(substring,start)在字串中查詢某個子串,
返回找到子串的第乙個字元的索引,
如果沒有找到子串,則返回-1。
start引數用於指定從字串的那個索引處開始搜尋,start為數字值。
如果start大於字串長度,則start取值等於字串長度,
如果start小於0, 則start取值為0。
$ 結果為6
10.lower_case將字串轉為小寫
$ 結果為string
11.upper_case將字串轉為大寫
$ 結果為string
12.contains 判斷字元中是否包含某個子串。返回布林值
$ 結果為true
注意:布林值必須轉換為字串才能輸出
13.number將字串轉換為數字
$ 結果為111.11
14.replace用於將字串中的一部分從左到右替換為另外的字串。
$ 結果為string
15.split使用指定的分隔符將乙個字串拆分為一組字串
<#list 「this|is|split」?split(「|」) as s>
$#list>
結果為:
this
issplit
16.trim 刪除字串首尾空格 $
結果為string
四、運算元字
1. c 用於將數字轉換為字串
$ 結果為123
2.string用於將數字轉換為字串
freemarker中預訂義了三種數字格式:number,currency(貨幣)和percent(百分比)
其中number為預設的數字格式轉換
例如:
<#assign tempnum=20>
$
$或$ 結果為20
$或$ 結果為¥20.00
$或$ 結果為2,000%
五、操作布林值
string 用於將布林值轉換為字串輸出
true轉為「true」,false轉換為「false」
foo?string(「yes」,」no」)如果布林值是true,那麼返回「yes」,否則返回no
Freemarker操作字串
1 substring start,end 從乙個字串中擷取子串 start 擷取子串開始的索引,start必須大於等於0,小於等於end end 擷取子串的長度,end必須大於等於0,小於等於字串長度,如果省略該引數,預設為字串長度。例子 結果為str 結果為tr 結果為r 結果為 結果為 結果為...
Freemarker操作字串
1 substring start,end 從乙個字串中擷取子串 start 擷取子串開始的索引,start必須大於等於0,小於等於end end 擷取子串的長度,end必須大於等於0,小於等於字串長度,如果省略該引數,預設為字串長度。例子 結果為str 結果為tr 結果為r 結果為 結果為 結果為...
freemarker操作字串(很常用)
1 substring start,end 從乙個字串中擷取子串 start 擷取子串開始的索引,start必須大於等於0,小於等於end end 擷取子串的長度,end必須大於等於0,小於等於字串長度,如果省略該引數,預設為字串長度。例子 結果為str 結果為tr 結果為r 結果為 結果為 結果為...