簡介 在jsp頁面上經(jīng)常遇到得到集合長度、字符長度、字符切取等應用需,在2.0以前這種需是許多程序員對JSTL及為不滿意的地方之一。為此在2.0 中添加了functions標簽,其提供對以上需求的支持。 使用方法 引用<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>函數(shù)說明: 函數(shù) 描述
fn:contains(string, substring) 如果參數(shù)string中包含參數(shù)substring,返回true
fn:containsIgnoreCase(string, substring) 如果參數(shù)string中包含參數(shù)substring(忽略大小寫),返回true
fn:endsWith(string, suffix) 如果參數(shù) string 以參數(shù)suffix結尾,返回true
fn:escapeXml(string) 將有特殊意義的XML (和HTML)轉(zhuǎn)換為對應的XML character entity code,并返回
fn:indexOf(string, substring) 返回參數(shù)substring在參數(shù)string中第一次出現(xiàn)的位置
fn:join(array, separator) 將一個給定的數(shù)組array用給定的間隔符separator串在一起,組成一個新的字符串并返回。
fn:length(item) 返回參數(shù)item中包含元素的數(shù)量。參數(shù)Item類型是數(shù)組、collection或者String。如果是String類型,返回值是String中的字符數(shù)。
fn:replace(string, before, after) 返回一個String對象。用參數(shù)after字符串替換參數(shù)string中所有出現(xiàn)參數(shù)before字符串的地方,并返回替換后的結果
fn:split(string, separator) 返回一個數(shù)組,以參數(shù)separator 為分割符分割參數(shù)string,分割后的每一部分就是數(shù)組的一個元素
fn:startsWith(string, prefix) 如果參數(shù)string以參數(shù)prefix開頭,返回true
fn:substring(string, begin, end) 返回參數(shù)string部分字符串, 從參數(shù)begin開始到參數(shù)end位置,包括end位置的字符
fn:substringAfter(string, substring) 返回參數(shù)substring在參數(shù)string中后面的那一部分字符串
fn:substringBefore(string, substring) 返回參數(shù)substring在參數(shù)string中前面的那一部分字符串
fn:toLowerCase(string) 將參數(shù)string所有的字符變?yōu)樾懀⑵浞祷?
fn:toUpperCase(string) 將參數(shù)string所有的字符變?yōu)榇髮懀⑵浞祷?
fn:trim(string) 去除參數(shù)string 首尾的空格,并將其返回
示例
${fn.substring(string,begin,end)}
來一個我自己測試用的代碼
<%@ page contentType="text/html;charset=gbk"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<html>
<head>
<title>這個是 JSTL的 測試</title>
</head>
<body>
<c:set var="str" value="stringStRiNg"/>
<c:set var="t" value="tr"/>
<c:out value="${str} = ${fn:length(str)}"/>
<c:out value="${fn:toLowerCase(str)}"/>
<c:out value="${fn:toUpperCase(' ')}"/>
<c:out value="${fn:toUpperCase('AbCdEfg')}"/><br>
<c:out value="${fn:substring('asdfefg',0,3)}"/><br>
<c:out value="${fn:substringAfter('asdf','s')}"/><Br>
<c:out value="${fn:substringBefore(str,'g')}"/><Br>
<c:out value="${fn:trim(' sd dew e ')}"/><Br>
<c:out value=" d sd dew e "/><Br>
<c:out value="${fn:replace(str,'ing','IN')}"/><Br>
</body>
</html>