JSTL字符串处理函数
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" %>
注:使用方法为 fn: 开头,不要写成 fn. 切记...
下面是JSTL中自带的方法列表以及其描述
函数名 | 使用 | 说明 |
contains | <c:if test="${fn:contains(name, searchString)}"> | 判断字符串是否包含另外一个字符串 |
containsIgnoreCase | <c:if test="${fn:containsIgnoreCase(name, searchString)}"> | 判断字符串是否包含另外一个字符串(大小写无关) |
endsWith | <c:if test="${fn:endsWith(filename, ".txt")}"> | 判断字符串是否以另外字符串结束 |
escapeXml | ${fn:escapeXml(param:info)} | 把一些字符转成XML表示,例如<字符应该转为< |
indexOf | ${fn:indexOf(name, "-")} | 子字符串在母字符串中出现的位置 |
join | ${fn:join(array, ";")} | 将数组中的数据联合成一个新字符串,并使用指定字符格开 |
length | ${fn:length(shoppingCart.products)} | 获取字符串的长度,或者数组的大小 |
replace | ${fn:replace(text, "-", "?")} | 替换字符串中指定的字符 |
split | ${fn:split(customerNames, ";")} | 把字符串按照指定字符切分 |
startsWith | <c:if test="${fn:startsWith(product.id, "100-")}"> | 判断字符串是否以某个子串开始 |
substring | ${fn:substring(zip, 6, -1)} | 获取子串 |
substringAfter | ${fn:substringAfter(zip, "-")} | 获取从某个字符所在位置开始的子串 |
substringBefore | ${fn:substringBefore(zip, "-")} | 获取从开始到某个字符所在位置的子串 |
toLowerCase | ${fn.toLowerCase(product.name)} | 转为小写 |
toUpperCase | ${fn.UpperCase(product.name)} | 转为大写字符 |
trim | ${fn.trim(name)} | 去除字符串前后的空格 |
分享到:
相关推荐
最近用jstl1.0 的时候经常要在页面上对字符串做改动,在网上找了一个写的不错的,借鉴一下
jstl 字符串处理函数 fn:length、fn:contains 、 fn:containsIgnoreCase 、 fn:endsWith 、 fn:escapeXml 、 fn:indexOf 、 fn:join 、 fn:replace 、 fn:split 、 fn:startsWith 、 fn:substring 、 fn:...
JSP中JSTL提供的函数标签EL表达式操作字符串的方法
jstl和struts2标签截取字符串 ...jstl标签提供了多种有用的方法来截取字符串,既可以使用jstl原有的标签库方法,也可以使用自定义函数。struts2标签也可以用来截取字符串,但是需要使用struts2的标签库。
引入标签库 <%@tablib uri=...fn:contains 判断字符串是否包含另外一个字符串 ${fn:contains(name,> fn:containsIgnoreCase 判断字符串是否包含另外一个字符串(大小写无关) <c:if test=${
做过大型网站前台的Web开发程序员最头疼的事情就是前台首页的布局,这其中最最头疼的就是标题字符的截取的问题,虽然有fn:substring,但表现率以及对中文的支持均不够完善,其实最终还是归结为客户要求太高了,不过...
所有jstl_fn标签库,函数标签库中的常用函数,在string字符串中是否包含substring字符串;在string中是否包含substring,忽略其大小写;字符串string是否以字符串prefixstring开头;在string中是substring第一次出现的...
异常处理程序:能够让系统在出现异常的情况下恢复过来的程序使用异常处理情况:异常诊断与异常处理不在同一个位置下时使用异常处理程序(若用户一直通过键盘与程序通话,那么就不能使用处理键盘输入处理)使用异常的...
JSTL 使用表达式来简化页面的代码,这对一些标准的方法,例如bean的getter/setter方法,请求参数或者context以及 session中的数据的访问非常方便,但是我们在实际应用中经常需要在页面调用对象的某些方法,例如我...
第二步:调用fn:contains(arg1,arg2)函数 ,前面一个参数agr1是从数据库中取出的爱好的字符串(即原字符串)。后面一个是被包含的字符串,如果原字符串包含后面的字符串,那么这个复选框对应的状态就会被勾选上 ...
${pageContext.request.queryString} 取得请求的参数字符串${pageContext.request.requestURL} 取得请求的URL,但不包括请求之参数字符串 ${pageContext.request.contextPath} 服务的web application 的名称 ${...
该用例是用jquery设置层的,table表列数据太长,一列显示太长会将样式撑乱,特将显示的数据做处理,可以后台字符串截取,也可以引入页面函数<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>...
下面是常用的内建的字符串函数: html:对字符串进行HTML编码 cap_first:使字符串第一个字母大写 lower_case:将字符串转换成小写 upper_case:将字符串转换成大写 trim:去掉字符串前后的空白字符 下面是集合的...
6.字符串 7.封装,继承,多肽 8.接口与抽象类 9.java集合类 10.jdbc 11 html简介与js的基本语法 12 javascript内置对象和内置函数 13 javascript的DOM编程 14-15项目案例:当当网上书店或者做一个计算器 16 Ajax ...
//通过调用不同的构造函数生成不同导航字符串 PageControl pageControl = new PageControl("PageTest", page, 30); //数字列表导航形式,首尾页时仍显示上一页,下一页(默认形式) PageControl pageControl2 = new ...
//通过调用不同的构造函数生成不同导航字符串 PageControl pageControl = new PageControl("PageTest", page, 30); //数字列表导航形式,首尾页时仍显示上一页,下一页(默认形式) PageControl pageControl2 = ...
${param}表示返回请求参数中单个字符串的值. ${paramValues}表示返回请求参数的一组 值.pageScope表示页面范围的变量.requestScope表示请求对象的变量. sessionScope表示会话 范围内的变量.applicationScope...
35、MySQL、SqlServer、oracle写出字符存储、字符串转时间 52 36、update语句可以修改结果集中的数据吗? 53 37、oracle如何设置主键自动增长? 53 38、表连接、子查询的区别是什么?它们可以相互转化吗?你倾向于用...