WEB系统截取字符串的几种方法

来源:互联网 发布:june软件 编辑:程序博客网 时间:2024/05/21 14:00

   在做WEB系统的时候,经常要涉及到截取字符串的问题,比如首页新闻的长度。现在提供几种JAVA方面的字符串截取方法,这些方法来源于网络,我只是做一些总结的工作。

 

 

1.最好用的方式是用JSTL提供的标签fn,用fn配合c标签可以很好的控制字符串长度:例子如下

2.采用自定义EL函数或者自定义标签:这种情况下往往是因为默认的fn标签不能够满足程序需求,可以用自定义EL函数:例子如下:

开发步骤:

1、 添加实现静态方法

2、 添加标签库描述符tld文件(Tag Library Descriptor),在其中注册该静态方法


3、 在JSP页面导入标签库(不用再Web.xml中说明tld的位置,servlet容器可自动搜索tld文件,因此可打包成jar文件)

<%@taglib uri="http://blog.csdn.net/xxd851116" prefix="fnx" %>

注意:

(1) 此处的uri和tld文件中的uri必须相一致,这个不用说明吧?哈哈。

(2) prefix是函数使用前缀。

4、 页面使用,超级简单!

view plaincopy to clipboardprint?
${fnx:abbreviate('要截取的源字符串', '字节长度', '尾部追加字符')} 
${fnx:abbreviate('要截取的源字符串', '字节长度', '尾部追加字符')}

5、 测试结果

【代码】

【结果】

a
a我b
a我b是
a我b是c
a我b是c,
a我b是c,中d
a我b是c,中d国
a我b是c,中d国e
a我b是c,中d国e人f

...
...
a我...
a我b...
a我b是...
a我b是c...
a我b是c,中...
a我b是c,中d...
a我b是c,中d国...
a我b是c,中d国e人f

 

3.修改fn标签的内容,这种情况下往往是因为和第二点相同的情况或者fn对中文支持不是很好,例子如下:

最后一段是自己加的方法。

和在fn.tld 中增加了

在把编译后的Functions.class 文件去替换 jstl1.2.jar解压后的相应位置的Functions.class  和 fn.tld 文件 再做成Jar包就可以用了(做成Jar包的方法,按解压出来的目录不变,替换以后,打个zip 包,修改后缀为jar 就可以了这种方法比较方便)

在页面中使用就是



<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

${fn:cutString(product.enDesc ,15) }

这里也提供做好了的jstl1.2.jar文件,不用自己再去改了

4.用JS实现截取字符串,这种情况是不推荐的,不过介绍一下:

5.用CSS截取字符串,这种方式应该说应用范围不广,因为好像只支持IE(不知道对不对)

原创粉丝点击