`
vsover
  • 浏览: 26718 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

jstl截取字符长度处理

阅读更多
servlet2.4规范
一、(fn函数)
      <c:set var="subStr" value="abcdefghijksdf"
      <c:choose>
          <c:when test="${fn:length(subStr) > 2}">
              <c:out value="${fn:substring(subStr, 0, 2)}......" />
          </c:when>
         <c:otherwise>
            <c:out value="${subStr}" />
          </c:otherwise>
      </c:choose>

注:记得要引用标签库
      
 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
        <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>

二、自定义函数
package com.uisk.util;    
   
/** 
* 定义函数 
*/   
public class UFunction {    
   
    /** 
      * 获取一个字符串的长度 
      * 
      * @param str 
      * @return int 
      */   
    public static int getLen(String str) {    
        return str.length();    
     }    
   
    /** 
      * 截取字符串 
      * 
      * @param str 
      * @param start 
      * @param end 
      * @return String 
      */   
    public static String substr(String str, int start, int end) {    
        return str.substring(start, end);    
     }    
   
    /** 
      * 两数相除获取整数结果 
      *   
      * @param first 
      * @param second 
      * @return int 
      */   
    public static int chufa(int first, int second) {    
        return first / second;    
     }    
}  


再建一个tld文件放在WEB-INF目录下面对其进行配置:
<?xml version="1.0" encoding="UTF-8"?>    
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"   
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"   
     version="2.0">    
     <tlib-version>1.0</tlib-version>    
     <short-name>len</short-name>    
     <function>    
         <description>calculate string length</description><!-- 对这个EL方法的描述   -->    
         <name>getLen</name><!-- 调用EL方法的名称 -->    
         <function-class>com.cw.common.UFunction</function-class>    
         <function-signature>    
            int getLen(java.lang.String)    
         </function-signature>    
         <example>${len:getLen(str)}</example><!-- 例如 -->    
     </function>    
   
     <function>    
         <description>substring</description>    
         <name>substr</name>    
         <function-class>com.cw.common.UFunction</function-class>    
         <function-signature>    
             java.lang.String substr(java.lang.String,int,int)    
         </function-signature>    
     </function>    
   
     <function>    
         <description>chufa</description>    
         <name>chufa</name>    
         <function-class>com.cw.common.UFunction</function-class>    
         <function-signature>int chufa(int,int)</function-signature>    
     </function>    
</taglib>  


最后进行调用测试:
<%@ page language="java" pageEncoding="gbk"%>    
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
<%@ taglib uri="/WEB-INF/mytag.tld" prefix="myTag" %>    
   
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">    
<html>    
   <body>    
     <c:set var="str" value="自定义函数,做一个截取字符串长度的测试"></c:set>    
     字条串"${str}"的长度是${myTag:getLen(str)}<br/>    
     字条串"${str}"截取前5个字符:${myTag:substr(str,0,5)}<br/>    
    5除以3取整数是:${myTag:chufa(5,3) }    
      
   </body>    
</html>   



servlet2.3规范
<td align=center width='200' id="" nowrap>
<bean:define id="Myflag" name="para" property="flag" type="java.lang.String" />
<%
	Myflag = Myflag.substring(0,1);
	System.out.println(Myflag);
	if("0".equals(Myflag)){
	%>待处理<%
	}
	if("1".equals(Myflag)){
	%>处理成功<%
	}
	if("2".equals(Myflag)){
	%>处理失败<%
	}
	if("3".equals(Myflag)){
	%>未复核<%
	}
 %>

</td>
2
1
分享到:
评论
2 楼 vsover 2010-07-06  
To:mercyblitz  、
sorry! 因为是写给自己看 所以我没描述清楚  因为在jstl fn只能在servlet2.4的应用中使用  所以我做了下区分
1 楼 mercyblitz 2010-07-05  
JSTL是单独的规范,不属于Servlet,如果要强行的话,也应该是JSP。

相关推荐

    直接截取jstl长度控制字符串长短

    其中,`&lt;fn:substring&gt;`是JSTL中的一个非常实用的标签,用于截取字符串的指定部分。该标签通过指定起始位置和结束位置来截取字符串,从而实现对字符串长度的控制。 #### ${fn:substring(名称,0,23)} 此表达式表示...

    (TAG标签)jstl和struts2标签截取字符串[文].pdf

    jstl和struts2标签截取字符串 从给定的文件信息中,我们可以看到,jstl和struts2标签都是用于截取字符串的。下面我们将对这两个标签进行详细的介绍和分析。 jstl标签 jstl标签是一种基于Java的标签库,它提供了...

    jsp页面截取字符串

    在 JSTL `fn` 标签库中,`substring` 标签可用于截取字符串。 首先,需要在 JSP 页面中导入 JSTL 库: ```jsp &lt;%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %&gt; ...

    JSTL 字符串处理函数

    截取字符串的一部分。可以指定起始位置和长度。例如: ```jsp ${fn:substring('Hello World', 0, 5)} &lt;!-- 输出:Hello --&gt; ``` 5. **fn:substringAfter** 返回在指定字符后的字符串部分。如: ```jsp ${fn:...

    jstl字符窜的截取

    - 如果`begin`或`end`的值超过了字符串的实际长度,JSTL不会抛出异常,而是默默地截取到字符串的末尾。 - 当`begin`的值小于0时,截取将从字符串末尾开始计算,这可能导致截取的子串为空。 结合给出的文件`util_...

    运用El表达式截取字符串/获取list的长度实例

    本文将深入探讨如何使用EL表达式来截取字符串以及获取List的长度。EL表达式通常与JSTL(JavaServer Pages Standard Tag Library)结合使用,提供了一系列的函数,如`fn:substring`和`fn:length`,来增强字符串和集合...

    自定义EL函数解决JSTL标签不足之处——按字节长度截取字符串

    做过大型网站前台的Web开发程序员最头疼的事情就是前台首页的布局,这其中最最头疼的就是标题字符的截取的问题,虽然有fn:substring,但表现率以及对中文的支持均不够完善,其实最终还是归结为客户要求太高了,不过...

    jstl 字符串处理函数

    此函数用于截取字符串的一部分。它有三个版本,支持根据开始位置和结束位置截取,或者根据结束位置截取到字符出现的位置,或者从字符出现的位置截取到字符串末尾。 使用示例: ```jsp ${fn:substring(zip, 6, -1)} ...

    JSTL_fn标签 字符处理标签

    JSTL(JavaServer Pages Standard Tag Library)是一个用于简化JSP开发的标准标签库,其中的fn标签提供了一系列方便的字符串处理函数。这些函数使得在JSP页面中进行字符串操作更加简单,无需编写复杂的Java脚本。...

    JSP 中限定字符长度

    ### JSP中的字符长度限制 #### 1. 问题背景 在Web开发过程中,尤其是在展示大量数据或内容的页面上,有时我们不希望将过长的文本完整地显示出来,而是只展示其中的一部分,并提供一个链接让用户查看完整内容。这种...

    jstl and standard_JSTL_

    - `fn:substring()` 截取字符串的一部分。 使用JSTL的优点包括: - **代码分离**:JSTL使得页面逻辑和显示逻辑分离,提高了代码的可读性和可维护性。 - **减少脚本代码**:通过使用标签,可以减少JSP页面中的Java...

    jstl标签.rar

    `&lt;fn:length&gt;` 计算字符串或集合的长度,`&lt;fn:substring&gt;` 截取字符串的一部分,`&lt;fn:split&gt;` 将字符串分割成数组。 4. Sql库:对于需要进行数据库操作的场景,JSTL的sql库提供了执行SQL查询、处理结果集等功能。`...

    jstl jar包

    例如,`fn:length()`可以计算数组或集合的长度,`fn:substring()`用于截取字符串等。 在描述中提到的"EL表达式(Expression Language)"是JSP 2.0引入的一种强大的脚本语言,用于在JSP页面中访问JavaBean或其他数据...

    jstl1.2标签库jar包

    - `fn:substring`, `fn:substringAfter`, `fn:substringBefore`:字符串截取。 - **sql标签库** - `sql:query`:执行SQL查询。 - `sql:update`:执行SQL更新。 - `sql:transaction`:管理SQL事务。 **使用JSTL...

    jar包下载jstl

    - `fn:substring()`:截取字符串的一部分。 - `fn:indexOf()`:查找字符串中子串的位置。 **5. fmt标签集** fmt标签集用于处理日期、时间和数字的格式化,以及国际化。例如: - `&lt;fmt:formatDate&gt;`:格式化日期。 -...

    JSTL函数JSTL函数

    这个函数用于截取字符串的特定部分。 12. `fn:substringAfter(string, delimiter)` 从`string`中`delimiter`字符之后的部分开始,返回一个新的字符串。这个函数在提取字符串中某个部分时很有用。 13. `fn:...

    JSTL详解---附源码

    - `&lt;fn:substring&gt;`:截取字符串。 - `&lt;fn:split&gt;`:字符串分割。 **7. JSTL JDBC** - `&lt;sql:query&gt;`:执行SQL查询。 - `&lt;sql:update&gt;`:执行SQL更新语句。 - `&lt;sql:transaction&gt;`:管理数据库事务。 **源码分析*...

    jstl参考手册大全.chm

    3. `fn:substring()` 截取字符串的一部分。 **I18N/Locale标签库**支持多语言和本地化功能,例如: 1. `&lt;fmt:message&gt;` 获取国际化资源中的消息。 2. `&lt;fmt:setBundle&gt;` 设置当前的资源包。 3. `&lt;fmt:formatDate&gt;` ...

    JSTL需要的jar包

    提供了额外的函数库,如`fn:length()`用于获取数组或集合的长度,`fn:substring()`用于截取字符串等。 **JSTL I18N标签**: 1. `&lt;fmt:requestEncoding&gt;`:设置请求编码。 2. `&lt;fmt:bundle&gt;`:处理资源包,支持国际...

    jstl-impl-1.2

    2. **Fn标签库**:函数库,提供了一些实用的字符串和集合操作函数,如`&lt;fn:length&gt;`用于获取字符串或数组长度,`&lt;fn:substring&gt;`用于截取字符串,`&lt;fn:split&gt;`用于字符串分割等,使得在JSP页面上进行数据处理更为...

Global site tag (gtag.js) - Google Analytics