<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    我的Blog我做主^_^

    走向一條通往JAVA的不歸路...

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      64 隨筆 :: 68 文章 :: 77 評論 :: 0 Trackbacks

    稱呼 Functions 標簽庫為標簽庫,倒不如稱呼其為函數庫來得更容易理解些。因為 Functions 標簽庫并沒有提供傳統的標簽來為 JSP 頁面的工作服務,而是被用于 EL 表達式語句中。在 JSP2.0 規范下出現的 Functions 標簽庫為 EL 表達式語句提供了許多更為有用的功能。 Functions 標簽庫分為兩大類,共 16 個函數。

    q???????? 長度函數: fn:length

    q???????? 字符串處理函數: fn:contains fn:containsIgnoreCase fn:endsWith fn:escapeXml fn:indexOf fn:join fn:replace fn:split fn:startsWith fn:substring fn:substringAfter fn:substringBefore fn:toLowerCase fn:toUpperCase fn:trim

    以下是各個函數的用途和屬性以及簡單示例。

    9.7.1? 長度函數 fn:length 函數

    長度函數 fn:length 的出現有重要的意義。在 JSTL1.0 中,有一個功能被忽略了,那就是對集合的長度取值。雖然 java.util.Collection 接口定義了 size 方法,但是該方法不是一個標準的 JavaBean 屬性方法(沒有 get,set 方法),因此,無法通過 EL 表達式“ ${collection.size} ”來輕松取得。

    fn:length 函數正是為了解決這個問題而被設計出來的。它的參數為 input ,將計算通過該屬性傳入的對象長度。該對象應該為集合類型或 String 類型。其返回結果是一個 int 類型的值。下面看一個示例。

    <%ArrayList arrayList1 = new ArrayList();

    ??????????????????????????? arrayList1.add("aa");

    ??????????????????????????? arrayList1.add("bb");

    ??????????????????????????? arrayList1.add("cc");

    %>

    <%request.getSession().setAttribute("arrayList1", arrayList1);%>

    ${fn:length(sessionScope.arrayList1)}

    假設一個 ArrayList 類型的實例“ arrayList1 ”,并為其添加三個字符串對象,使用 fn:length 函數后就可以取得返回結果為“ 3 ”。

    9.7.2? 判斷函數 fn:contains 函數

    fn:contains 函數用來判斷源字符串是否包含子字符串。它包括 string substring 兩個參數,它們都是 String 類型,分布表示源字符串和子字符串。其返回結果為一個 boolean 類型的值。下面看一個示例。

    ${fn:contains("ABC", "a")}<br>

    ${fn:contains("ABC", "A")}<br>

    前者返回“ false ”,后者返回“ true ”。

    9.7.3? fn:containsIgnoreCase 函數

    fn:containsIgnoreCase 函數與 fn:contains 函數的功能差不多,唯一的區別是 fn:containsIgnoreCase 函數對于子字符串的包含比較將忽略大小寫。它與 fn:contains 函數相同,包括 string substring 兩個參數,并返回一個 boolean 類型的值。下面看一個示例。

    ${fn:containsIgnoreCase("ABC", "a")}<br>

    ${fn:containsIgnoreCase("ABC", "A")}<br>

    前者和后者都會返回“ true ”。

    9.7.4? 詞頭判斷函數 fn:startsWith 函數

    fn:startsWith 函數用來判斷源字符串是否符合一連串的特定詞頭。它除了包含一個 string 參數外,還包含一個 subffx 參數,表示詞頭字符串,同樣是 String 類型。該函數返回一個 boolean 類型的值。下面看一個示例。

    ${fn:startsWith ("ABC", "ab")}<br>

    ${fn:startsWith ("ABC", "AB")}<br>

    前者返回“ false ”,后者返回“ true ”。

    9.7.5? 詞尾判斷函數 fn:endsWith 函數

    fn:endsWith 函數用來判斷源字符串是否符合一連串的特定詞尾。它與 fn:startsWith 函數相同,包括 string subffx 兩個參數,并返回一個 boolean 類型的值。下面看一個示例。

    ${fn:endsWith("ABC", "bc")}<br>

    ${fn:endsWith("ABC", "BC")}<br>

    前者返回“ false ”,后者返回“ true ”。

    9.7.6? 字符實體轉換函數 fn:escapeXml 函數

    fn:escapeXml 函數用于將所有特殊字符轉化為字符實體碼。它只包含一個 string 參數,返回一個 String 類型的值。

    9.7.8? 字符匹配函數 fn:indexOf 函數

    fn:indexOf 函數用于取得子字符串與源字符串匹配的開始位置,若子字符串與源字符串中的內容沒有匹配成功將返回“ -1 ”。它包括 string substring 兩個參數,返回結果為 int 類型。下面看一個示例

    ${fn:indexOf("ABCD","aBC")}<br>

    ${fn:indexOf("ABCD","BC")}<br>

    前者由于沒有匹配成功,所以返回 -1 ,后者匹配成功將返回位置的下標,為 1

    9.7.9? 分隔符函數 fn:join 函數

    fn:join 函數允許為一個字符串數組中的每一個字符串加上分隔符,并連接起來。它的參數、返回結果和描述如表 9.25 所示:

    9.25   fn:join 函數

    參數

    描述

    array

    字符串數組。其類型必須為 String[] 類型

    separator

    分隔符。其類型必須為 String 類型

    返回結果

    返回一個 String 類型的值

    下面看一個示例。

    <% String[] stringArray = {"a","b","c"}; %>

    <%request.getSession().setAttribute("stringArray", stringArray);%>

    ${fn:join(sessionScope.stringArray,";")}<br>

    定義數組并放置到 Session 中,然后通過 Session 得到該字符串數組,使用 fn:join 函數并傳入分隔符“ ; ”,得到的結果為“ a;b;c ”。

    9.7.10? 替換函數 fn:replace 函數

    fn:replace 函數允許為源字符串做替換的工作。它的參數、返回結果和描述如表 9.26 所示:

    9.26   fn:replace 函數

    參數

    描述

    inputString

    源字符串。其類型必須為 String 類型

    beforeSubstring

    指定被替換字符串。其類型必須為 String 類型

    afterSubstring

    指定替換字符串。其類型必須為 String 類型

    返回結果

    返回一個 String 類型的值

    下面看一個示例。

    ${fn:replace("ABC","A","B")}<br>

    將“ ABC ”字符串替換為“ BBC ”,在“ ABC ”字符串中用“ B ”替換了“ A ”。

    9.7.11? 分隔符轉換數組函數 fn:split 函數

    fn:split 函數用于將一組由分隔符分隔的字符串轉換成字符串數組。它的參數、返回結果和描述如表 9.27 所示:

    9.27   fn:split 函數

    參數

    描述

    string

    源字符串。其類型必須為 String 類型

    delimiters

    指定分隔符。其類型必須為 String 類型

    返回結果

    返回一個 String[] 類型的值

    下面看一個示例。

    ${fn:split("A,B,C",",")}<br>

    將“ A,B,C ”字符串轉換為數組 {A,B,C}

    9.7.12? 字符串截取函數 fn:substring 函數

    fn:substring 函數用于截取字符串。它的參數、返回結果和描述如表 9.28 所示:

    9.28   fn:substring 函數

    參數

    描述

    string

    字符串。其類型必須為 String 類型

    beginIndex

    指定起始下標(值從 0 開始)。其類型必須為 int 類型

    endIndex

    指定結束下標(值從 0 開始)。其類型必須為 int 類型

    返回結果

    返回一個 String 類型 的值

    下面看一個示例。

    ${fn:substring("ABC","1","2")}<br>

    截取結果為“ B ”。

    ?

    posted on 2007-03-02 08:50 java_蟈蟈 閱讀(355) 評論(0)  編輯  收藏 所屬分類: STRUTS
    主站蜘蛛池模板: 国精无码欧精品亚洲一区| 亚洲成av人片在线看片| 久久国产乱子伦精品免费一| 亚洲理论在线观看| 国产在线观看免费不卡| 成人毛片100免费观看| 亚洲精品在线免费观看| 国产网站免费观看| 久久精品视频免费看| 亚洲色大网站WWW永久网站| 77777亚洲午夜久久多人| 亚洲视频免费播放| 一区二区三区精品高清视频免费在线播放| 亚洲国产精品无码久久久蜜芽| 免费福利在线播放| 一级成人生活片免费看| 亚洲入口无毒网址你懂的| 国产亚洲?V无码?V男人的天堂| 美女视频黄免费亚洲| 中文字幕免费人成乱码中国| 亚洲免费福利在线视频| 国产av无码专区亚洲av桃花庵| 毛片免费观看网址| 日本免费人成网ww555在线| 国产精品亚洲综合一区在线观看 | 香蕉免费看一区二区三区| 亚洲人成网站看在线播放| 国产av无码专区亚洲av桃花庵| 好爽好紧好大的免费视频国产 | 国产成人免费ā片在线观看| 一级成人a毛片免费播放| 免费无码婬片aaa直播表情| 亚洲一区二区三区国产精品无码| 亚洲乱码国产乱码精品精| 国产精品成人免费综合| 一个人在线观看视频免费| 久久久久国色av免费看| 一本一道dvd在线观看免费视频 | 国产精品美女久久久免费 | 亚洲国产成人久久综合区| 国产成人精品免费午夜app|