EL表达式中如何截取字符串

EL表达式中如何截取字符串

可以截取,用fn函数:
<%@ 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表示,例如 <字符应该转为&lt;
${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)}

函数 
描述

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 首尾的空格,并将其返回

来自:http://blog.csdn.net/yuzhengyang0720/article/details/6539661

时间: 2024-10-09 09:15:19

EL表达式中如何截取字符串的相关文章

EL表达式中fn函数

JSTL 使用表达式来简化页面的代码,这对一些标准的方法,例如bean的getter/setter方法,请求参数或者context以及 session中的数据的访问非常方便,但是我们在实际应用中经常需要在页面调用对象的某些方法,例如我需要调用字符串的length方法来获取字符串的 长度时,在以往的开发过程中我们必须把对象先转为String类,然后在调用其length方法,这样的代码繁琐而且容易出错. 因此JSTL内置了几个用于字符串操作的方法,可以直接在表达式中使用,大大的简化了代码,提供代码的

EL表达式中fn函数 (转载)

JSTL 使用表达式来简化页面的代码,这对一些标准的方法,例如bean的getter/setter方法,请求参数或者context以及 session中的数据的访问非常方便,但是我们在实际应用中经常需要在页面调用对象的某些方法,例如我需要调用字符串的length方法来获取字符串的 长度时,在以往的开发过程中我们必须把对象先转为String类,然后在调用其length方法,这样的代码繁琐而且容易出错. 因此JSTL内置了几个用于字符串操作的方法,可以直接在表达式中使用,大大的简化了代码,提供代码的

EL表达式中引用隐式变量

除了在jsp中9大隐式变量(在前面文章也叫预定义变量)在转化成为servlet后_jspService中可以看到: public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response) throws java.io.IOException, javax.servlet.ServletException {

EL表达式中的数字类型

今天遇到一个有趣的问题,也很纳闷的问题,不过好在解决了,在此记录下来. 在控制器中定义了一个Map<Integer,String>集合,看似没有问题,将这个集合的对象map传递到一个JSP页面中,我们都知道,用EL表达式 ${map[key]}就可以取得key对应的value了.但是问题就是这么奇怪,这样取不到值.百度,才发现:EL表达式中数字1,2,3,...是Long类型.也就是EL表达式不支持Integer类型的数字作为Map的key. 修改上述集合为:Map<Long,Strin

java、el表达式中保留小数的方法

Java中: import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; public class format { double f = 111231.5585; public void m1() { BigDecimal bg = new BigDecimal(f); double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP

JSP隐含变量和Spring中Model在EL表达式中的读取顺序

偶然中存在着必然,必然中存在着偶然 偶然出现的bug,必然存是由代码的不合理甚至错误的 代码逻辑越长,越复杂,就越容易出现bug 之前项目里几次偶然出现了一个bug,简单的描述就是第一次新增了之后进行一个B操作,之后在新增一次,页面中的一个隐含变量会"记住"这个新增之后的id,因为这个需要连续两次新增且在第一次新增之后进行B操作之后才会出现,所以很长时间里面都是偶然出现. 定位问题的过程就是进行很多次的操作,然后逐个排除.尝试自己的猜测,再次进行代码级的排除.定位这种问题一定要有一定的

linux中shell截取字符串方法总结

截取字符串的方法一共有八种,主要为以下方法 shell中截取字符串的方法有很多中, ${expression}一共有9种使用方法. ${parameter:-word} ${parameter:=word} ${parameter:?word} ${parameter:+word} 上面4种可以用来进行缺省值的替换. ${#parameter} 上面这种可以获得字符串的长度. ${parameter%word} 最小限度从后面截取word ${parameter%%word} 最大限度从后面截取

EL表达式中fn函数详解

JSTL使用表达式来简化页面的代码,这对一些标准的方法,例如bean的getter/setter方法,请求参数或者context以及session中的数据的访问非常方便,但是我们在实际应用中经常需要在页面调用对象的某些方法,例如我需要调用字符串的length方法来获取字符串的长度时,在以往的开发过程中我们必须把对象先转为String类,然后在调用其length方法,这样的代码繁琐而且容易出错. 因此JSTL内置了几个用于字符串操作的方法,可以直接在表达式中使用,大大的简化了代码,提供代码的可读性

Spring Model存储值在jsp EL表达式中不能正确显示(原样显示)问题

这几天我搭了一个SpringMvc环境,写了一个Controller,并且Controller里面有一个很简单的映射到jsp页面的方法,如下: 这里的Map<String,String>其实就是Model对象的一个替代品,Spring会把它当成Model的.从代码里看到我存了两个值,然后跳转到dashboard.jsp页面.如下: 当我启动项目,并访问时发现EL表达式原样输出,如下: 我查看了我所有配置,发现没有什么问题.百思不得其解,后来经过google一番,发现原来是web.xml版本不对