`

JSTL截取字符串

    博客分类:
  • JSP
阅读更多

使用JSTL在JSP页面截取字符串

 

1、使用C标签和fn标签

需要引用的标签库:

 截取方法:

 

2、使用S标签:

 需要导入的标签库:

 

<%@ taglib prefix="s" uri="/struts-tags" %>
 截取方法:
 
3、自定义JSTL标签:
首先自定义一个java类:UFunction.java
/**
 * 定义El自定义函数来截取字符串
 * */
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 getResult(int first,int second){
		return first/second;
	}
}
然后在WEB-INF下面建立一个tld文件:myTag.tld
<?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>get the string length</description><!-- 对这个EL方法进行描述 -->
		<name>getLen</name><!-- 调用El方法的名字 -->
		<function-class>com.SSHED.util.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.SSHED.util.UFunction</function-class>
       		<function-signature>java.lang.String substr(java.lang.String,int,int)</function-signature>
       </function>
       
       <function>
       		<description>getResult</description>
       		<name>getResult</name>
       		<function-class>com.SSHED.util.UFunction</function-class>
       		<function-signature>int getResult(int,int)</function-signature>
       </function>
       </taglib>

 页面测试:

先导入需要的标签库:



 
截取方法:


 

 

期间遇到的问题:

org.apache.jasper.JasperException:XXX.jsp(64,62) equal symbol  expected

 是由于单引号和双引号的混乱使用导致的。

解决办法:

将双引号里面的双引号改成单引号,单引号里面的双引号该成单引号。

  • 大小: 41.3 KB
  • 大小: 24 KB
  • 大小: 38.2 KB
  • 大小: 46.2 KB
  • 大小: 20.7 KB
  • 大小: 83.2 KB
  • 大小: 34.4 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics