EL表达式函数-获取字符串长度、截…

来源:互联网 发布:海岛奇兵小怪升级数据 编辑:程序博客网 时间:2024/04/19 13:47

1.fn:contains 判断字符串是否包含另外一个字符串

(name,searchString)}">   
2.fn:containsIgnoreCase 判断字符串是否包含另外一个字符串(大小写无关)

test="${fn:containsIgnoreCase(name,searchString)}">   
3.fn:endsWith 判断字符串是否以另外字符串结束

(filename,".txt")}">   
4.fn:escapeXml 把一些字符转成XML表示,例如<字符应该转为<

${fn:escapeXml(param:info)}   
5.fn:indexOf 子字符串在母字符串中出现的位置${fn:indexOf(name,"-")}   
6.fn:join 将数组中的数据联合成一个新字符串,并使用指定字符格开 ${fn:join

(array,";")}   
7.fn:length 获取字符串的长度,或者数组的大小 ${fn:length

(shoppingCart.products)}   
8.fn:replace 替换字符串中指定的字符 ${fn:replace(text,"-","•")}   
9.fn:split 把字符串按照指定字符切分${fn:split(customerNames,";")}   
10.fn:startsWith 判断字符串是否以某个子串开始

(product.id,"100-")}">   
11.fn:substring 获取子串 ${fn:substring(zip,6,-1)}   
12.fn:substringAfter 获取从某个字符所在位置开始的子串${fn:substringAfter

(zip,"-")}   
13.fn:substringBefore 获取从开始到某个字符所在位置的子串

${fn:substringBefore(zip,"-")}   
14.fn:toLowerCase转为小写${fn.toLowerCase(product.name)}   
15.fn:toUpperCase转为大写字符${fn.UpperCase(product.name)}   
16.fn:trim 去除字符串前后的空格 ${fn.trim(name)} 

 

称呼Functions 标签库为标签库,倒不如称呼其为函数库来得更容易理解些。因为 Functions标签库并没有提供传统的标签来为JSP 页面的工作服务,而是被用于 EL 表达式语句中。在 JSP2.0 规范下出现的Functions 标签库为 EL表达式语句提供了许多更为有用的功能。 Functions 标签库分为两大类,共 16个函数。
长度函数: fn:length
字符串处理函数: 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类型的值。下面看一个示例。