JSTL中fn表达式的使用说明
简介 在jsp页面上经常遇到得到集合长度、字符长度、字符切取等应用需,在2.0以前这种需是许多程序员对JSTL及为不满意的地方之一。为此在2.0 中添加了functions标签,其提供对以上需求的支持。
使用方法 引用<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
函数说明: 函数 描述
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 首尾的空格,并将其返回
示例:
${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>
文章转载自网管网:http://www.bitscn.com/pdb/java/200810/152598.html
分享到:
相关推荐
使用JSTL可以避免在JSP页面中嵌入过多的Java代码,实现视图和业务逻辑的分离,提高开发效率和代码质量。JSTL主要包含以下几个核心模块: 1. **Core模块**:提供了基础的控制结构,如循环、条件语句等。 2. **fmt...
在JavaServer Pages (JSP) 开发中,JSTL(JavaServer Pages Standard Tag ...同时,JSTL与EL结合使用,能够减少页面中的脚本代码,使JSP更加符合MVC(模型-视图-控制器)设计模式,提升应用程序的结构和可维护性。
4. 在JSP页面中使用:在JSP页面中,你可以像使用内置EL函数一样,通过`my:myFunction`这种形式调用你的自定义函数,其中`my`是函数库的前缀,`myFunction`是函数名。 举例来说,假设我们有一个自定义函数库,名为`...
例如,对于一个ArrayList,由于EL表达式不能直接获取size属性,可以使用`fn:length`来获取元素个数。如 `${fn:length(sessionScope.arrayList1)}` 可以得到数组列表的长度。 2. **fn:contains**:此函数检查源字符...
在实际开发中,JSTL和EL常常配合使用,JSTL负责页面的控制逻辑,EL则处理数据绑定。例如,可以使用`<c:forEach>`迭代列表,然后使用EL表达式在循环内部输出每个元素的属性。这种方式让JSP页面更加清晰,降低了代码的...
在JSTL中,`fn`函数库提供了许多方便的字符串处理方法,让我们逐一详细讲解这些方法的使用和功能。 1. `fn:contains(string, substring)`:这个函数用于检查字符串`string`是否包含子字符串`substring`。如果包含,...
要在项目中使用`fn`函数标签库,首先需要在JSP页面或Web应用程序的`web.xml`文件中进行配置。通常情况下,可以在JSP页面顶部使用以下语句进行配置: ```jsp <%@ taglib uri="http://java.sun.com/jstl/fn" prefix=...
**JSTL(JavaServer ...例如,使用JSTL的`<c:if>`和正则表达式,可以轻松地检查用户输入是否符合特定的格式要求。同时,JSTL的`<fn:replace>`或`<c:out>`配合正则表达式,可以安全地处理和展示数据,避免安全问题。
此外,在使用JSTL时,我们还需要了解EL表达式中的运算符,这对于编写复杂的逻辑表达式非常有帮助。 #### 1. 算术运算符 - `+`、`-`、`*`、`/`、`%`、`div`、`mod` - 示例: ```jsp ${a + b} // 加法 ${a * b} ...
**JSP中的EL和JSTL表达式** 在JavaServer Pages (JSP) 开发中,EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)是两个非常重要的工具,它们极大地简化了页面逻辑,提高了代码的可读性和...
本文将详细介绍JSTL中的`fn`函数以及如何与EL结合使用。 #### JSTL `fn`函数详解 ##### 1. **fn:contains** - **功能**:判断一个字符串是否包含另一个子串。 - **示例**: ```jsp ${fn:contains(name, ...
EL表达式经常与JSTL一起使用,尤其是在JSTL的`c`(Core)标签库中。例如,`<c:if>`和`<c:forEach>`标签可以配合EL表达式进行条件判断和循环操作。通过这种方式,开发者可以将业务逻辑和视图层分离,提高代码的可读性...
- EL 可以直接在 JSTL 标签中使用,例如 `${}` 语法。 7. **优点** - 提高代码可读性:JSTL 标签比 JSP 脚本更直观,便于理解。 - 分离关注点:JSTL 有助于实现 MVC 设计模式,将业务逻辑从视图层分离。 - 更少...
在实际开发中,EL表达式常常与JSTL标签一起使用,以实现更为灵活和简洁的页面逻辑控制。下面将详细介绍几种常用的EL表达式与JSTL标签结合使用的方法: ##### 1. 使用`fn:contains`判断字符串是否包含特定子串 ```...
描述中的"EL和JSTL表达式学习资料,精品总结"提示我们,这份压缩包可能包含了一份详尽的教程或总结,它将重点放在EL和JSTL的使用和表达式上,可能是通过实例和清晰的解释来帮助学习者快速掌握这些技术。 **EL...
在提供的文件名"EL_Function"中,可能包含的是关于如何在JSTL中使用EL函数的示例。EL函数允许开发者扩展EL表达式的能力,例如使用`fn:split()`函数对字符串进行分割,或者`fn:length()`计算集合的长度。在JSP页面中...
在使用JSTL时,需要将这两个库文件添加到项目的类路径(classpath)中。在Web应用中,通常会将它们放在WEB-INF/lib目录下。同时,还需要在JSP页面中引入JSTL的核心库和所需的扩展库,通过以下指令完成: ```jsp ...
在Web开发中,EL表达式和JSTL的结合使用,可以进一步提升开发效率。比如,可以使用EL表达式在JSP页面上直接获取模型数据,然后通过JSTL的`c:forEach`标签遍历集合,或者使用`c:if`标签进行条件判断。这样,开发者...
通过上述步骤,你就可以在JSP页面中使用JSTL进行更高效、更清晰的开发了。JSTL的使用降低了代码的复杂度,提高了开发效率,是Java Web开发中的一个重要工具。学习和熟练掌握JSTL,对于提升Web开发技能是非常有帮助的...