JSTL 使用表達式來簡化頁面的代碼,這對一些標準的方法,例如bean的getter/setter方法,請求參數或者context以及 session中的數據的訪問很是方便,可是咱們在實際應用中常常須要在頁面調用對象的某些方法,例如我須要調用字符串的length方法來獲取字符串的 長度時,在以往的開發過程當中咱們必須把對象先轉爲String類,而後在調用其length方法,這樣的代碼繁瑣並且容易出錯。
所以JSTL內置了幾個用於字符串操做的方法,能夠直接在表達式中使用,大大的簡化了代碼,提供代碼的可讀性。在JSTL的表達是中要使用一個函數,其格式以下html
${ns:methodName(args....)}java
在使用這些函數以前必須在JSP中引入標準函數的聲明編程
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>數組
下面是JSTL中自帶的方法列表以及其描述session
函數名 | 函數說明 | 使用舉例 |
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 | 獲取從某個字符所在位置開始的子串jsp |
${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)} |
函數函數 |
描述post |
fn:contains(string, substring)url |
若是參數string中包含參數substring,返回truespa |
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)}
- 使用前在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)}