JSP 函数标签库
引入标签库URL
<%--
JSTL标准函数
大部分都是通用的字符串处理函数
需要引用JSTL函数库,如下:
--%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%--
JSTL核心标签库引用
--%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
小例子....
<%--
Created by IntelliJ IDEA.
User: cyx
Date: 2016/4/3
Time: 23:55
To change this template use File | Settings | File Templates.
--%>
<%--
JSTL标准函数
大部分都是通用的字符串处理函数
需要引用JSTL函数库,如下:
--%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%--
JSTL核心标签库引用
--%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title></title>
</head>
<body>
<%--
fn:contains()函数: 用于确定一个字符串是否包含指定的字符串
boolean contains(java.lang.String, java.lang.String)
--%>
<c:set value="I am a TEST String" var="theString"/>
<c:if test="${fn:contains(theString,'test')}">
<p>Found test String</p>
</c:if>
<c:if test="${fn:contains(theString, 'TEST')}">
<p>Found TEST String</p>
</c:if>
<br>
<%--
fn:containslgnoreCase()函数: 用于确定一个字符串是否包含指定的字符串,忽略大小写
--%>
<c:set value="I am a test String" var="theString2"/>
<c:if test="${fn:containsIgnoreCase(theString2, 'test')}">
<p>Found test String</p>
</c:if>
<c:if test="${fn:containsIgnoreCase(theString2, 'TEST')}">
<P>Found TEST String</P>
</c:if>
<br>
<%--
fn:endsWith()函数: 用于确定一个字符串是否以指定后缀结尾
--%>
<c:set value="I am a test String 123" var="testString3"/>
<c:if test="${fn:endsWith(testString3, '123')}">
<p>String ends with 123</p>
</c:if>
<c:if test="${fn:endsWith(testString3, 'TEST')}">
<P>String ends with TEST</P>
</c:if>
<br>
<%--
fn:escapeXml()函数忽略用于XML标记的字符
(去除XML标签)
--%>
<c:set value="This is first String" var="String1"/>
<c:set value="This <abc> is second String.<abc>" var="String2"/>
<p>With escapeXml()Function:</p>
<P>String(1) :${fn:escapeXml(String1)}</P>
<p>String(2) :${fn:escapeXml(String2)}</p>
<p>WithOut escapeXml()Function:</p>
<p>String(1) :${String1}</p>
<p>String(2) :${String2}</p>
<br>
<%--
fn:indexOf()函数 :返回一个字符串中指定字符串的位置(下标)
--%>
<c:set value="This is first String" var="String3"/>
<c:set value="This <abd>is second String.</abc>" var="String4"/>
<p>Index(1) : ${fn:indexOf(String3, "first")}</p>
<p>Index(2) : ${fn:indexOf(String4, "second")}</p>
<br>
<%--
fn:split()函数 :讲一个字符串用指定的分隔符 分裂为一个子串数组
java.lang.String[] split(java.lang.String, java.lang.String)
--%>
<c:set value="This is first String." var="String001"/>
<c:set value="${fn:split(String001, ' ')}" var="String002"/>
<c:set value="${fn:join(String002, '-')}" var="String003"/>
<p>String (3) : ${String003}</p>
<c:set value="${fn:split(String003, '-')}" var="String004"/>
<c:set value="${fn:join(String004, ' ')}" var="String005"/>
<p>String (5) : ${String005}</p>
<br>
<%--
fn:join()函数:将一个数组中的所有元素使用指定的分隔符来连成一个字符串
String join (java.lang.String[], java.lang.String)
--%>
<c:set value="This is first String." var="String5"/>
<c:set value="${fn:split(String5, ' ')}" var="String6"/>
<c:set value="${fn:join(String6, '-')}" var="String7"/>
<p>Final String : ${String7}</p>
<br>
<%--
fn:length()函数 :返回字符串长度或集合中元素的数量
int length(java.lang.Object)
--%>
<c:set value="This is first String." var="String01"/>
<c:set value="This is second String." var="String02"/>
<p>Length of String (1) :${fn:length(String01)}</p>
<p>Length of String (2) :${fn:length(String02)}</p>
<br>
<%--
fn:replace()函数 :将字符串中所指定的字符串用另外的字符串替换.
boolean replace(java.lang.String, java.lang.String, java.lang.String)
--%>
<c:set value="This is first String." var="String03"/>
<c:set value="${fn:replace(String03, 'first', 'second')}" var="String04"/>
<p>Final String : ${String04}</p>
<br>
<%--
fn:startsWith()函数 :用于确定一个字符串是否指定前缀开始
boolean startsWith(java.lang.String, java.lang.String)
--%>
<c:set value="Second: This is first String" var="String05"/>
<c:if test="${fn:startsWith(String05, 'First')}">
<P>String starts with First</P>
</c:if>
<br/>
<c:if test="${fn:startsWith(String05, 'Second')}">
<p>String starts with Second</p>
</c:if>
<br>
<%--
fn:substring()函数 :返回字符串中指定开始和结束索引的字符串
java.lang.String substring(java.lang.String, int, int)
--%>
<c:set value="This is first String" var="String06"/>
<c:set value="${fn:substring(String06, 5, 15)}" var="String07"/>
<p>Final sub String :${String07}</p>
<br>
<%--
fn:substringAfter()函数 :返回字符串中指定字符串后面的部分.
java.lang.String substringAfter(java.lang.String, java.lang.String)
--%>
<c:set value="This is first String" var="String08"/>
<c:set value="${fn:substringAfter(String08, 'is')}" var="String09"/>
<p>Final sub String(2) :${String09}</p>
<br>
<%--
fn:substringBefore()函数:返回一个字符串中指定字符串前面的部分
--%>
<c:set value="This is first String." var="String100"/>
<c:set value="${fn:substringBefore(String100, 'first')}" var="String101"/>
<p>Final sub String(3) :${String101}</p>
<br>
<%--
fn:toLowerCase()函数 :将字符串中的所有字符转为小写
--%>
<c:set value="THIS is first String2." var="String102"/>
<c:set value="${fn:toLowerCase(String102)}" var="String103"/>
<p>Final String : ${String103}</p>
<br>
<%--
fn:toUpperCase()函数 :将一个字符串中的所有字符串转为大写
--%>
<c:set value="This is first String" var="String104"/>
<c:set value="${fn:toUpperCase(String104)}" var="String105"/>
<p>Final String : ${String105}</p>
<br>
</body>
</html>
部署运行就可以看了....