JSTL 使用表達式來簡化頁面的代碼,這對一些标準的方法,例如bean的getter/setter方法,請求參數或者context以及 session中的資料的通路非常友善,但是我們在實際應用中經常需要在頁面調用對象的某些方法,例如我需要調用字元串的length方法來擷取字元串的 長度時,在以往的開發過程中我們必須把對象先轉為String類,然後在調用其length方法,這樣的代碼繁瑣而且容易出錯。
是以JSTL内置了幾個用于字元串操作的方法,可以直接在表達式中使用,大大的簡化了代碼,提供代碼的可讀性。在JSTL的表達是中要使用一個函數,其格式如下
${ns:methodName(args....)}
在使用這些函數之前必須在JSP中引入标準函數的聲明
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
下面是JSTL中自帶的方法清單以及其描述
函數名 | 函數說明 | 使用舉例 |
fn:contains | 判斷字元串是否包含另外一個字元串 | <c:if test="${fn:contains(name, searchString)}"> |
fn:containsIgnoreCase | 判斷字元串是否包含另外一個字元串(大小寫無關) | <c:if test="${fn:containsIgnoreCase(name, searchString)}"> |
fn:endsWith | 判斷字元串是否以另外字元串結束 | <c:if test="${fn:endsWith(filename, ".txt")}"> |
fn:escapeXml | 把一些字元轉成XML表示,例如<字元應該轉為< | ${fn:escapeXml(param:info)} |
fn:indexOf | 子字元串在母字元串中出現的位置 | ${fn:indexOf(name, "-")} |
fn:join | 将數組中的資料聯合成一個新字元串,并使用指定字元格開 | ${fn:join(array, ";")} |
fn:length | 擷取字元串的長度,或者數組的大小 | ${fn:length(shoppingCart.products)} |
fn:replace | 替換字元串中指定的字元 | ${fn:replace(text, "-", "•")} |
fn:split | 把字元串按照指定字元切分 | ${fn:split(customerNames, ";")} |
fn:startsWith | 判斷字元串是否以某個子串開始 | <c:if test="${fn:startsWith(product.id, "100-")}"> |
fn:substring | 擷取子串 | ${fn:substring(zip, 6, -1)} |
fn:substringAfter | 擷取從某個字元所在位置開始的子串 | ${fn:substringAfter(zip, "-")} |
fn:substringBefore | 擷取從開始到某個字元所在位置的子串 | ${fn:substringBefore(zip, "-")} |
fn:toLowerCase | 轉為小寫 | ${fn.toLowerCase(product.name)} |
fn:toUpperCase | 轉為大寫字元 | ${fn.UpperCase(product.name)} |
fn:trim | 去除字元串前後的空格 | ${fn.trim(name)} |
函數 | 描述 |
fn:contains(string, substring) | 如果參數string中包含參數substring,傳回true |
fn:containsIgnoreCase(string, substring) | 如果參數string中包含參數substring(忽略大小寫),傳回true |
fn:endsWith(string, suffix) | 如果參數 string 以參數suffix結尾,傳回true |
fn:escapeXml(string) | 将有特殊意義的XML (和HTML)轉換為對應的XML character entity code,并傳回 |
fn:indexOf(string, substring) | 傳回參數substring在參數string中第一次出現的位置 |
fn:join(array, separator) | 将一個給定的數組array用給定的間隔符separator串在一起,組成一個新的字元串并傳回。 |
fn:length(item) | 傳回參數item中包含元素的數量。參數Item類型是數組、collection或者String。如果是String類型,傳回值是String中的字元數。 |
fn:replace(string, before, after) | 傳回一個String對象。用參數after字元串替換參數string中所有出現參數before字元串的地方,并傳回替換後的結果 |
fn:split(string, separator) | 傳回一個數組,以參數separator 為分割符分割參數string,分割後的每一部分就是數組的一個元素 |
fn:startsWith(string, prefix) | 如果參數string以參數prefix開頭,傳回true |
fn:substring(string, begin, end) | 傳回參數string部分字元串, 從參數begin開始到參數end位置,包括end位置的字元 |
fn:substringAfter(string, substring) | 傳回參數substring在參數string中後面的那一部分字元串 |
fn:substringBefore(string, substring) | 傳回參數substring在參數string中前面的那一部分字元串 |
fn:toLowerCase(string) | 将參數string所有的字元變為小寫,并将其傳回 |
fn:toUpperCase(string) | 将參數string所有的字元變為大寫,并将其傳回 |
fn:trim(string) | 去除參數string 首尾的空格,并将其傳回 |
http://blog.csdn.net/qingwangyoucao/article/details/6218069
EL表達式中fn函數的使用及截取字元串
文章分類:Java程式設計 關鍵字: el表達式中fn函數的使用及截取字元串
做了一個月的項目,下面把我經常用到的,在今天寫了幾篇文章,友善以後的查閱.
fn函數:
- 使用前在Jsp頁面的首部加上以下代碼:
- <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
- 下面是JSTL中自帶的方法清單以及其描述
- 函數名 函數說明 使用舉例
- fn:contains 判斷字元串是否包含另外一個字元串 <c:if test="${fn:contains(name, searchString)}">
- fn:containsIgnoreCase 判斷字元串是否包含另外一個字元串(大小寫無關) <c:if test="${fn:containsIgnoreCase(name, searchString)}">
- fn:endsWith 判斷字元串是否以另外字元串結束 <c:if test="${fn:endsWith(filename, ".txt")}">
- fn:escapeXml 把一些字元轉成XML表示,例如 <字元應該轉為< ${fn:escapeXml(param:info)}
- fn:indexOf 子字元串在母字元串中出現的位置 ${fn:indexOf(name, "-")}
- fn:join 将數組中的資料聯合成一個新字元串,并使用指定字元格開 ${fn:join(array, ";")}
- fn:length 擷取字元串的長度,或者數組的大小 ${fn:length(shoppingCart.products)}
- fn:replace 替換字元串中指定的字元 ${fn:replace(text, "-", "•")}
- fn:split 把字元串按照指定字元切分 ${fn:split(customerNames, ";")}
- fn:startsWith 判斷字元串是否以某個子串開始 <c:if test="${fn:startsWith(product.id, "100-")}">
- fn:substring 擷取子串 ${fn:substring(zip, 6, -1)}
- fn:substringAfter 擷取從某個字元所在位置開始的子串
- ${fn:substringAfter(zip, "-")}
- fn:substringBefore 擷取從開始到某個字元所在位置的子串 ${fn:substringBefore(zip, "-")}
- fn:toLowerCase 轉為小寫 ${fn.toLowerCase(product.name)}
- fn:toUpperCase 轉為大寫字元 ${fn.UpperCase(product.name)}
- fn:trim 去除字元串前後的空格 ${fn.trim(name)}
[java] view plaincopy
- 使用前在Jsp頁面的首部加上以下代碼:
- <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
- 下面是JSTL中自帶的方法清單以及其描述
- 函數名 函數說明 使用舉例
- fn:contains 判斷字元串是否包含另外一個字元串 <c:if test="${fn:contains(name, searchString)}">
- fn:containsIgnoreCase 判斷字元串是否包含另外一個字元串(大小寫無關) <c:if test="${fn:containsIgnoreCase(name, searchString)}">
- fn:endsWith 判斷字元串是否以另外字元串結束 <c:if test="${fn:endsWith(filename, ".txt")}">
- fn:escapeXml 把一些字元轉成XML表示,例如 <字元應該轉為< ${fn:escapeXml(param:info)}
- fn:indexOf 子字元串在母字元串中出現的位置 ${fn:indexOf(name, "-")}
- fn:join 将數組中的資料聯合成一個新字元串,并使用指定字元格開 ${fn:join(array, ";")}
- fn:length 擷取字元串的長度,或者數組的大小 ${fn:length(shoppingCart.products)}
- fn:replace 替換字元串中指定的字元 ${fn:replace(text, "-", "•")}
- fn:split 把字元串按照指定字元切分 ${fn:split(customerNames, ";")}
- fn:startsWith 判斷字元串是否以某個子串開始 <c:if test="${fn:startsWith(product.id, "100-")}">
- fn:substring 擷取子串 ${fn:substring(zip, 6, -1)}
- fn:substringAfter 擷取從某個字元所在位置開始的子串
- ${fn:substringAfter(zip, "-")}
- fn:substringBefore 擷取從開始到某個字元所在位置的子串 ${fn:substringBefore(zip, "-")}
- fn:toLowerCase 轉為小寫 ${fn.toLowerCase(product.name)}
- fn:toUpperCase 轉為大寫字元 ${fn.UpperCase(product.name)}
- fn:trim 去除字元串前後的空格 ${fn.trim(name)}
函數 描述
fn:contains(string, substring)
如果參數string中包含參數substring,傳回true
fn:containsIgnoreCase(string, substring)
如果參數string中包含參數substring(忽略大小寫),傳回true
fn:endsWith(string, suffix)
如果參數 string 以參數suffix結尾,傳回true
fn:escapeXml(string)
将有特殊意義的XML (和HTML)轉換為對應的XML character entity code,并傳回
fn:indexOf(string, substring)
傳回參數substring在參數string中第一次出現的位置
fn:join(array, separator)
将一個給定的數組array用給定的間隔符separator串在一起,組成一個新的字元串并傳回。
fn:length(item)
傳回參數item中包含元素的數量。參數Item類型是數組、collection或者String。如果是String類型,傳回值是String中的字元數。
fn:replace(string, before, after)
傳回一個String對象。用參數after字元串替換參數string中所有出現參數before字元串的地方,并傳回替換後的結果
fn:split(string, separator)
傳回一個數組,以參數separator 為分割符分割參數string,分割後的每一部分就是數組的一個元素
fn:startsWith(string, prefix)
如果參數string以參數prefix開頭,傳回true
fn:substring(string, begin, end)
傳回參數string部分字元串, 從參數begin開始到參數end位置,包括end位置的字元
fn:substringAfter(string, substring)
傳回參數substring在參數string中後面的那一部分字元串
fn:substringBefore(string, substring)
傳回參數substring在參數string中前面的那一部分字元串
fn:toLowerCase(string)
将參數string所有的字元變為小寫,并将其傳回
fn:toUpperCase(string)
将參數string所有的字元變為大寫,并将其傳回
fn:trim(string)
去除參數string 首尾的空格,并将其傳回