关键字: jstl字符串处理函数
/***********
截取一定长度字符串*****************/
在应用程序开发中,如果内容过长,想截取一定长度字符,然后补充"....."
jstl1.1引入了一个fn.tld的标签,用于处理字符,如获得字符length,substring,indexof,endWith,lowcase
实现截取字符串
如:
<c:set var="log.logTitle" value="做一个截取字符串长度的测试"
<c:choose>
<c:when test="${fn:length(log.logTitle) > 10}">
<c:out value="${fn:substring(log.logTitle, 0, 10)}......" />
</c:when>
<c:otherwise>
<c:out value="${log.logTitle}" />
</c:otherwise>
</c:choose>
/*****************
截取一定长度字符串***************/
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" %>
下面是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
把一些字符转成XML 表示,例如< 字符应该转为<
${fn:escapeXml(param:info)}
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)}
分享到:
相关推荐
例如,我们可以创建一个名为`UFunction`的类,定义一些自定义函数,如`getLen`函数用于获取字符串的长度,`substr`函数用于截取字符串的一部分。 ```java package com.uisk.util; / * 定义 EL自定义函数 */ ...
- `jstl 获取字符串长度 字符串操作 - cherryQQ - JavaEye技术网站.htm`:关于使用JavaServer Pages Standard Tag Library(JSTL)进行字符串操作的指南。 - `JavaScript 操作 select元素select对象 DHTML - ylqmf的...
其次,`fn:length`函数用于获取字符串的长度或数组的大小。例如`${fn:length(list)}`,这里的`list`是一个列表,`fn:length`返回列表中的元素数量。如果`list`是一个字符串,它将返回字符串的字符数。 除了这两个...
1. **fn:length**:这个函数用于获取字符串或集合的长度。例如,对于一个ArrayList,由于EL表达式不能直接获取size属性,可以使用`fn:length`来获取元素个数。如 `${fn:length(sessionScope.arrayList1)}` 可以得到...
具体来说,`fn:length()`函数用于获取字符串长度,而`fn:substring()`函数则用来截取字符串的一部分。 #### 3. 示例代码解析 下面的代码片段展示了如何使用JSTL来限制JSP页面中某个字段的显示长度: ```jsp ...
fn 函数是 JSTL 中的一个重要组件,提供了多种字符串操作函数,例如字符串包含、字符串以某个子串结尾、字符串的长度等等。这些函数可以直接在JSP页面中使用,简化了代码编写,并提高了代码的可读性。 在使用 fn ...
3. **Function标签库 (fn)**:提供了一些实用的函数,如字符串操作、数组或集合操作等。比如`<fn:length>`可以计算字符串或集合的长度,`<fn:contains>`用来检查字符串是否包含某个子串。 4. **XML标签库 (xml)**:...
这在需要获取字符串前面的特定部分时非常有用。 14. `fn:toLowerCase(string)` 将`string`中的所有字符转换为小写并返回新的字符串。 15. `fn:toUpperCase(string)` 同样,将`string`中的所有字符转换为大写并...
3. Fn库:函数库提供了许多实用的函数,如字符串操作、数组和集合操作等。`<fn:length>` 计算字符串或集合的长度,`<fn:substring>` 截取字符串的一部分,`<fn:split>` 将字符串分割成数组。 4. Sql库:对于需要...
- **fn:length**:获取字符串长度。 - **fn:substring**:获取字符串子串。 - **fn:join**:连接字符串。 - **fn:split**:拆分字符串。 - **fn:escapeXml**:转义 XML 字符。 #### 七、JSTL 与 EL 的结合使用 ...
其中,`fn`函数是JSTL的一个重要组成部分,主要用于字符串操作。而EL(Expression Language)则是用于在JSP页面中方便地访问数据的一种表达式语言。本文将详细介绍JSTL中的`fn`函数以及如何与EL结合使用。 #### ...
4. **Function标签库(fn.tld)**:包含一些辅助函数,用于字符串操作、数组处理等。 - `<fn:length>`:获取集合或字符串的长度。 - `<fn:split>`:将字符串分割成数组。 - `<fn:contains>`:检查字符串是否包含...
6. **`length()`**: 获取字符串长度。 ```jsp ${fn:length('Hello')}" /> ``` 输出结果为:5 7. **`toLowerCase()` 和 `toUpperCase()`**: 将字符串转换为小写或大写。 ```jsp ${fn:toLowerCase('ABCDEF')}" ...
- `<x:parse>` 解析XML字符串为DOM对象。 - `<x:transform>` 使用XSLT转换XML文档。 - `<x:out>` 显示XML节点内容。 4. **JSTL Function Library**:这个库包含了各种预定义的函数,可以作为EL表达式中的方法...
2. **Fn标签库**:函数库,提供了一些实用的字符串和集合操作函数,如`<fn:length>`用于获取字符串或数组长度,`<fn:substring>`用于截取字符串,`<fn:split>`用于字符串分割等,使得在JSP页面上进行数据处理更为...
使用`fn:length`获取集合或字符串长度 ```jsp ${fn:length(shoppingCart.products)}" /> ``` 此函数用于获取购物车中产品的数量,并将结果存储到`productCount`变量中。 ##### 8. 使用`fn:replace`替换字符串中...
- `<fn:length>`:获取字符串或集合长度。 - `<fn:split>`:字符串分割。 - `<fn:contains>`:检查字符串是否包含指定子串。 4. **sql**:SQL标签库,用于执行数据库查询。 - `<sql:query>`:执行SQL查询。 - ...
1. `fn:length()` 计算集合或字符串的长度。 2. `fn:indexOf()` 查找字符串中某个子串的位置。 3. `fn:substring()` 截取字符串的一部分。 **I18N/Locale标签库**支持多语言和本地化功能,例如: 1. `<fmt:message>...
例如,`fn:length()`可以获取数组或集合的长度,`fn:split()`用于字符串分割。 4. ** fmt标签库**:用于国际化和格式化数据,如日期、时间、数字等。`<fmt:formatDate>`可以格式化日期,`<fmt:message>`用于获取...
4. **func(函数标签库)**:提供了一组通用的函数,如字符串操作、比较等。 - `<fn:length>`:计算字符串或集合的长度。 - `<fn:indexOf>`:查找字符串中子串的位置。 - `<fn:split>`:按指定分隔符将字符串拆分...