jstl标签中的fn与fmt标签的用法
fn標(biāo)簽更確切的說應(yīng)該叫做fn函數(shù),主要用于el表達(dá)式中,使用時需要在頁面中引入:
<%@ taglib uri="/WEB-INF/tld/fn.tld" prefix="fn"%>
JSP2.0規(guī)范下出現(xiàn)的Functions標(biāo)簽共有16個。
1.fn:length長度函數(shù)?
作用:計算集合的長度,返回值是集合的長度
例子:
${fn:length(userList)}
${fn:length(userArray)}
2.fn:contains 判斷包含函數(shù)
作用:判斷一個字符串是否包含子字符串;返回值為true或者false
例子:
${fn:contains("ABCD","B")};--->true
${fn:contains("ABCD","E")};--->false
3.fn:containsIgnoreCase 忽略大小寫,判斷包含函數(shù)
作用:用來判斷一個字符串是否包含忽略大小寫的子字符串,與fn:contains類似,主要區(qū)別在于忽略大小寫
例子:
${fn:containsIgnoreCase("ABCD","A")}---true
${fn:containsIgnoreCase("ABCD","a")}---true
4.fn:startsWith 判斷詞頭函數(shù)
作用:用來判斷一個字符串是否以一個特定的詞頭開始
例子:
${fn:startsWith("ABCD","AB")}----true
${fn:startsWith("ABCD","CD")}----false
5.fn:endsWith 判斷詞尾函數(shù)
作用:用來判斷一個字符串是否以一個特定的詞尾結(jié)束
${fn:startsWith("ABCD","AB")}----false
${fn:startsWith("ABCD","CD")}----true
6.fn:escapeXml 字符實體轉(zhuǎn)換函數(shù)
作用:用于將所有特殊字符轉(zhuǎn)化為字符實體碼
例子:
${fn:escapeXml("<br>")}//頁面將顯示<br>,假如不使用此函數(shù),將返回一個換行
7.fn:indexOf 字符首次匹配函數(shù)
作用:用于取得子字符串與源字符串匹配的開始位置,若子字符串與源字符串中的內(nèi)容沒有匹配成功將返回"-1",下標(biāo)從0開始
例子:
${fn:indexOf("ABCD","ABC")}---返回0
${fn:indexOf("ABCD","BC")}---返回1
${fn:indexOf("ABCD","EF")}---返回-1
作用:用于將一個數(shù)組的成員以特定的字符連接起來。
| array | 字符串?dāng)?shù)組。其類型必須為? String[] ?類型 |
| separator | 分隔符。其類型必須為? String ?類型 |
| 返回結(jié)果 | 返回一個? String ?類型的值 |
例子:
${fn:join(userArray,";")} ? ?-----假如userAarray的值為[aaa,bbb,ccc],返回值為aaa;bbb;ccc
${fn:join(userArray,"&")} ? ?-----假如userAarray的值為[aaa,bbb,ccc],返回值為aaa&bbb&ccc
9.fn:replace 替換函數(shù)
作用:用于替換字符串中的字符。
| inputString | 源字符串。其類型必須為? String ?類型 |
| beforeSubstring | 指定被替換字符串。其類型必須為? String ?類型 |
| afterSubstring | 指定替換字符串。其類型必須為? String ?類型 |
| 返回結(jié)果 | 返回一個? String ?類型的值 |
例子:
${fn:replace("ABCD","A","B")}----返回的結(jié)果為BBCD
${fn:replace("ABCD","CD","YY")}----返回的結(jié)果為ABYY
10.fn:split 字符分割函數(shù)
作用:用于將一個字符串分割成數(shù)組。
| string | 源字符串。其類型必須為? String ?類型 |
| delimiters | 指定分隔符。其類型必須為? String ?類型 |
| 返回結(jié)果? | 返回一個? String[] ?類型的值 |
例子:
${fn:split("A_&_B_&_C_&_D","_&_")} ? ?//返回值為一個java數(shù)組 :{“A”,"B","C","D"}
11.fn:substring 字符串截取函數(shù)
作用:用于截取字符串
| string | 源字符串。其類型必須為? String ?類型 |
| beginIndex | 指定起始下標(biāo)(值從? 0 ?開始)。其類型必須為? int ?類型 |
| endIndex | 指定結(jié)束下標(biāo)(值從? 0 ?開始)。其類型必須為? int ?類型 |
| 返回結(jié)果 | 返回一個? String ?類型的值 |
例子:下標(biāo)從0開始,包前不包后
${fn:substring("ABCD","1","2")} ? ? ?//返回值為B
${fn:substring("ABCDEFGHIJK","4","6")} ? ? ?//返回值為EF
12.fn:substringBefore 起始至目標(biāo)字符截取函數(shù)
作用:用于截取源字符從開始到某個特定字符串之間的字符。
例子:
${fn:substringBefore("ABCD","BC")} ? //返回值為A
${fn:substringBefore("ABCDEFG","F")} ? //返回值為ABCDE
13.fn:substringAfter 目標(biāo)字符至結(jié)尾之間的字符。
例子:
${fn:substringBefore("ABCDEF","BC")} ?//返回值為DEF
${fn:substringBefore("ABCDEF","E")} ?//返回值為F
14.fn:toLowerCase 小寫轉(zhuǎn)換消息
作用:用于將源字符串中的字符全部轉(zhuǎn)換成小寫字符
例子:
${fn:toLowerCase("ABC")} ? //返回值為abc
15.fn:toUpperCase 大寫轉(zhuǎn)換函數(shù)
作用:用于將源字符串中的字符全部轉(zhuǎn)換成大寫字符。
例子:
${fn:toUpperCase("abc")} ? //返回結(jié)果為ABC
16.fn:trim ?空格刪除函數(shù)
作用:用于刪除源字符串中開頭與結(jié)尾部分的空格。
例子:
${fn:trim("ABC ?")} ?//返回結(jié)果為ABC
${fn:trim(" ?ABC ? DEF ?")} ?//返回結(jié)果為ABC ?DEF
fmt標(biāo)簽
formatting標(biāo)簽庫主要用于在JSP頁面中實現(xiàn)國際化與格式化,使用時在頁面中引入:
<%@ taglib uri="/WEB-INF/tld/fmt.tld" prefix="fmt"%>
JSP2.0規(guī)范下出現(xiàn)的formatting標(biāo)簽共有12個。
1.<fmt:timeZone> <fmt:setTimeZone>
作用:這兩組標(biāo)簽都用于設(shè)定一個時區(qū),唯一不同的是? <fmt:timeZone> ?標(biāo)簽將使得在其標(biāo)簽體內(nèi)的工作可以使用該時區(qū)設(shè)置,? <fmt:setTimeZone> ?標(biāo)簽則允許將時區(qū)設(shè)置保存為一個變量,在之后的工作可以根據(jù)該變量來進(jìn)行。
| var | <fmt:setTimeZone> ?獨有的屬性,用于保存時區(qū)為一個變量 |
| value | 時區(qū)的設(shè)置 |
| scope | 變量的作用范圍 |
2.<fmt:formatNumber>
作用:用于格式化數(shù)字。
| value | 格式化的數(shù)字,該數(shù)值可以是? String ?類型或? java.lang.Number ?類型的實例 |
| type | 格式化的類型,可以是currency(貨幣)、number(數(shù)字)和percent(百分比) |
| pattern | 格式化模式 |
| var | 結(jié)果保存變量 |
| scope | 變量的作用范圍 |
| maxIntegerDigits | 指定格式化結(jié)果的最大值 |
| minIntegerDigits | 指定格式化結(jié)果的最小值 |
| maxFractionDigits | 指定格式化結(jié)果的最大值,帶小數(shù) |
| minFractionDigits | 指定格式化結(jié)果的最小值,帶小數(shù) |
例子:
<fmt:formatNumber value="1000.88" type="currency" var="money"/> ? //該結(jié)果將被保存
在“money”變量中,將根據(jù)Locale環(huán)境顯示當(dāng)?shù)氐呢泿鸥袷健?/span>
3.<fmt:parseNumber>
作用:標(biāo)簽用于解析一個數(shù)字,并將結(jié)果作為? java.lang.Number ?類的實例返回。<fmt:parseNumber> ?標(biāo)簽看起來和? <fmt:formatNumber> ?標(biāo)簽的作用正好相反。
| value | 將被解析的字符串 |
| type | 解析格式化的類型 |
| pattern | 解析格式化模式 |
| var | 結(jié)果保存變量,類型為? java.lang.Number |
| scope | 變量的作用范圍? |
| parseLocale | 以本地化的形式來解析字符串,該屬性的內(nèi)容應(yīng)為? String ?或 java.util.Locale ?類型的實例 |
例子:
<fmt:parseNumber value="15%" type="percent" var="num"> ? //解析之后的結(jié)果為"0.15"
4.<fmt:formatDate>
作用:用于格式化日期。
| value | 格式化的日期,該屬性的內(nèi)容應(yīng)該是? java.util.Date ?類型的實例 |
| type | 格式化的類型 |
| pattern | 格式化模式 |
| var | 結(jié)果保存變量 |
| scope | 變量的作用范圍 |
| timeZone | 指定格式化日期的時區(qū) |
?5.<fmt:parseDate>
作用:用于解析一個日期,并將結(jié)果作為? java.lang.Date ?類型的實例返回。
| value | 將被解析的字符串? |
| type | 解析格式化的類型? |
| pattern | 解析格式化模式 |
| var | 結(jié)果保存變量,類型為? java.lang.Date |
| scope | 變量的作用范圍? |
| parseLocale | 以本地化的形式來解析字符串,該屬性的內(nèi)容為? String ?或? java.util.Locale ?類型的實例 |
| timeZone | 指定解析格式化日期的時區(qū) |
說明:<fmt:parseNumber>?和?<fmt:parseDate>?兩 組標(biāo)簽都實現(xiàn)解析字符串為一個具體對象實例的工作,因此,這兩組解析標(biāo)簽對?var?屬性的字符串參數(shù)要求非常嚴(yán)格。就?JSP?頁面的表示層前段來說,處理這種解析本不屬于份內(nèi)之事,因此?<fmt:parseNumber>?和?<fmt:parseDate>?兩組標(biāo)簽應(yīng)該 盡量少用,替代工作的地方應(yīng)該在服務(wù)器端表示層的后段,比如在?Servlet?中。
6.<fmt:setLocale>
作用:用于設(shè)置?Locale環(huán)境。
| value | Locale環(huán)境的指定可以是?java.util.Locale?或String?類型的實例 |
| scope | Locale?環(huán)境變量的作用范圍(可選) |
例子:
<fmt:setLocale value="zh_TW"/> //設(shè)置本地環(huán)境為繁體中文
7.<fmt:bundle><fmt:setBundle>作用:這兩組標(biāo)簽用于資源配置文件的綁定,唯一不同的是? <fmt:bundle> ?標(biāo)簽將資源配置文件綁定于它標(biāo)簽體中的顯示,? <fmt:setBundle> ?標(biāo)簽則允許將資源配置文件保存為一個變量,在之后的工作可以根據(jù)該變量來進(jìn)行。
| basename | 資源配置文件的指定,只需要指定文件名而無須擴(kuò)展名,二組標(biāo)簽共有的屬性 |
| var | <fmt:setBundle> ?獨有的屬性,用于保存資源配置文件為一個變量 |
| scope | 變量的作用范圍 |
例子:
[html]?view plain?copy該示例將會查找一個名為? applicationMessage_zh_CN.properties ?的資源配置文件,來作為顯示的? Resource ?綁定。
8.<fmt:message>
作用:用于信息顯示的標(biāo)簽,將顯示資源配置文件中定義的信息。
| key | 資源配置文件的“鍵”指定 |
| bundle | 若使用? <fmt:setBundle> ?保存了資源配置文件,該屬性就可以從保存的資源配置文件中進(jìn)行查找 |
| var | 將顯示信息保存為一個變量 |
| scope | 變量的作用范圍 |
例子:
9.<fmt:param>
作用:<fmt:param> ?標(biāo)簽應(yīng)該位于? <fmt:message> ?標(biāo)簽內(nèi),將為該消息標(biāo)簽提供參數(shù)值。它只有一個屬性? value。
10.<fmt:requestEncoding>
作用:<fmt:requestEncoding> ?標(biāo)簽用于為請求設(shè)置字符編碼。它只有一個屬性? value ?,在該屬性中可以定義字符編碼。
總結(jié)
以上是生活随笔為你收集整理的jstl标签中的fn与fmt标签的用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: access操作mysql_Access
- 下一篇: Centos8 更换DNF源