JSTL函数
JSTL包含了一系列标准函数。
引入:<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
函数有:
| 函数 | 描述 |
|---|---|
| fn:contains() | 测试输入的字符串是否包含指定的子串 |
| fn:containsIgnoreCase() | 测试输入的字符串是否包含指定的子串,大小写不敏感 |
| fn:endsWith() | 测试输入的字符串是否以指定的后缀结尾 |
| fn:escapeXml() | 跳过可以作为XML标记的字符 |
| fn:indexOf() | 返回指定字符串在输入字符串中出现的位置 |
| fn:join() | 将数组中的元素合成一个字符串然后输出 |
| fn:length() | 返回字符串长度 |
| fn:replace() | 将输入字符串中指定的位置替换为指定的字符串然后返回 |
| fn:split() | 将字符串用指定的分隔符分隔然后组成一个子字符串数组并返回 |
| fn:startsWith() | 测试输入字符串是否以指定的前缀开始 |
| fn:substring() | 返回字符串的子集 |
| fn:substringAfter() | 返回字符串在指定子串之后的子集 |
| fn:substringBefore() | 返回字符串在指定子串之前的子集 |
| fn:toLowerCase() | 将字符串中的字符转为小写 |
| fn:toUpperCase() | 将字符串中的字符转为大写 |
| fn:trim() | 移除首位的空白符 |
fn:contains() 测试输入的字符串中是否包含指定的字符串
语法:
boolean contains(String,String)
fn:contains(受测试字符串,指定字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a boy" />
<c:out value="${text}" /><br>
<c:if test="${fn:contains(text,'girl')}">
<p><c:out value="has 'girl' in it." /></p>
</c:if>
<c:if test="${fn:contains(text,'boy')}">
<p><c:out value="has 'boy' in it." /></p>
</c:if>
</body>
</html> //结果输出为:
I am a boy
has 'boy' in it.
fn:containsIgnoreCase() 在忽略大小写情况下,测试输入的字符串中是否包含指定的字符串
语法:
boolean containsIgnoreCase(String,String)
fn.containsIgnoreCase(受测试字符串,指定字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a boy" />
<c:out value="${text}" /><br>
<c:if test="${fn:containsIgnoreCase(text,'GIRL')}">
<p><c:out value="has 'GIRL' in it." /></p>
</c:if>
<c:if test="${fn:containsIgnoreCase(text,'BOY')}">
<p><c:out value="has 'BOY' in it." /></p>
</c:if>
</body>
</html> //结果输出为:
I am a boy
has 'BOY' in it.
fn:startsWith() 确定字符串是否以指定字符串开始
语法:
boolean startWith(String,String)
fn:startWith(受测试字符串,指定字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a girl " />
<p>原字符串:<c:out value="${text}" /></p>
<p>判断是否以I开头:<c:out value="${fn:startsWith(text,'I')}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am a girl
判断是否以I开头:true
fn:endsWith() 测试字符串是否以指定字符串结尾
语法:
boolean endsWith(String,String)
fn:endsWith(受测试字符串,指定字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a girl" />
<p>原字符串:<c:out value="${text}" /></p>
<p>判断是否以 girl 结尾:<c:out value="${fn:endsWith(text,'girl')}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am a girl
判断是否以 girl 结尾:true
fn:escapeXml() 忽略XML标记,同样在<c:out escapeXml="true" />
语法:
java.lang.String escapeXml(String)
fn:escapeXml(字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; ">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="<po> I am a girl </po>" />
<p>原字符串效果:${text}</p>
<p>忽略Xml格式后:${fn:escapeXml(text)}</p> </body>
</html>
//结果输出为:
原字符串效果: I am a girl
忽略Xml格式后:<po> I am a girl </po>
fn:indexOf() 返回指定字符串在该字符串中所在的位置
语法:
int indexOf(String,String)
fn:indexOf(字符串,指定字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a girl" />
<p>原字符串:<c:out value="${text}" /></p>
<p>am 在其中的位置为:<c:out value="${fn:indexOf(text,'am')}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am a girl
am 在其中的位置为:2
fn:join() 利用指定分隔符连接数组中所有元素
语法:
String join(String[],String)
fn:join(连接数组,分隔符)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a girl" />
<p>原字符串:<c:out value="${text}" /></p>
<c:set var="text1" value="${fn:split(text,' ')}" />
<p>最后为:<c:out value="${fn:join(text1,'-')}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am a girl
最后为:I-am-a-girl
fn:length() 返回字符串长度,或集合个数
语法:
int length(Object)
fn:length(所求长度对象)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a girl" />
<p>原字符串:<c:out value="${text}" /></p>
<p>该字符串的长度为:<c:out value="${fn:length(text)}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am a girl
该字符串的长度为:11
fn:replace() 替换字符串
语法:
boolean replace(String,String,String)
fn:replace(母字符串,替换源,替换目标)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a girl" />
<p>原字符串:<c:out value="${text}" /></p>
<p>将 girl 替换为 boy :<c:out value="${fn:replace(text,'girl','boy')}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am a girl
将 girl 替换为 boy :I am a boy
fn:split() 利用分隔符分割字符串成为数组
语法:
String[] split(String,String)
fn:split(字符串,分隔符)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a boy" />
<p>原字符串:<c:out value="${text}" /></p>
<p>将其转为字符串数组,分隔符为空格:<br>
<c:set var="texts" value="${fn:split(text,' ')}" />
<c:forEach var="item" items="${texts}">
<c:out value="${item}"/><br>
</c:forEach>
</p>
</body>
</html>
//结果输出为:
原字符串:I am a boy
将其转为字符串数组,分隔符为空格:
I
am
a
boy
fn:substring() 截取字符串
语法:
String substring(String,int,int)
fn:substring(字符串,开始位置,结束位置)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a boy" />
<p>原字符串:<c:out value="${text}" /></p>
<p>截取 2与8之间的字符串:<c:out value="${fn:substring(text,2,8)}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am a boy
截取 2与8之间的字符串:am a b
fn:substringAfter() 截取指定字符串之后的字符串
语法:
String substringAfter(String,String)
fn:substringAfter(字符串,指定字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a boy" />
<p>原字符串:<c:out value="${text}" /></p>
<p>截取 a 后面字符串:<c:out value="${fn:substringAfter(text,'a')}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am a boy
截取 a 后面字符串:m a boy
fn:substringBefore() 截取指定字符串之前的部分
语法:
String substringBefore(String,String)
fn:substringBefore(字符串,指定字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a boy" />
<p>原字符串:<c:out value="${text}" /></p>
<p>截取 a 前面字符串:<c:out value="${fn:substringBefore(text,'a')}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am e boy
截取 a 前面字符串:I am
fn:toLowerCase() 将指定字符串转换为小写
语法:
String toLowerCase(String)
fn:toLowerCase(指定字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a boy" />
<p>原字符串:<c:out value="${text}" /></p>
<p>转换为大写:<c:out value="${fn:toLowerCase(text)}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am a boy
转换为大写:i am a boy
fn:toUpperCase() 将指定字符串转换为大写
语法:
String toUpperCase(String)
fn:toUpperCase(指定字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value="I am a boy" />
<p>原字符串:<c:out value="${text}" /></p>
<p>转换为大写:<c:out value="${fn:toUpperCase(text)}" /></p>
</body>
</html>
//结果输出为:
原字符串:I am a boy
转换为大写:I AM A BOY
fn:trim() 清除字符串首尾空白字符串
语法:
String trim(String)
fn:trim(指定字符串)
eg:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:set var="text" value=" I am a boy " />
<p>原字符串长度:<c:out value="${fn:length(text)}" /></p>
<p>去除首尾空格后长度:<c:out value="${fn:length(fn:trim(text))}" /></p>
</body>
</html>
//结果输出为:
原字符串长度:16
去除首尾空格后长度:10
JSTL函数的更多相关文章
- JSTL函数标签库 fn标签
JSTL函数标签库 fn标签 在使用jstl的函数标签库之前需要在页面中引入: <%@ taglib prefix="fn" uri="http://java.su ...
- 权限管理之基于ACL的实现:自定义JSTL函数实现即时认证
实现即时认证(即只有拥有相应的权限,才能做相应的操作) 经常用在,在JSP页面上,调用JSTL自定义函数做判断,显示相应的菜单或者功能按钮,比如只有管理员登陆时才显示“删除”按钮,从而完成权限的即时认 ...
- 自定义JSTL函数标签(一)
jstl标签库的配置 * 将jstl.jar和standard.jar拷贝到WEB-INF/lib下(如果使用el表达式,不用拷贝这两个jar) 注意:jstl必须在能够支持j2ee1.4/servl ...
- Java进阶SQL函数、网页定时刷新与自定义JSTL函数
一.SQL函数 能够在SQL语句中调用的函数(方法) ,用来实现一些小功能 聚合函数 能够把多行数据聚合成一个值(统计) count() 计数,计算数据条数 max() 计算最大值 m ...
- 自己定义JSTL函数
因为 jstl 函数 字符串替换不支持正則表達式 所以想用java String的 replaceAll进行替换 须要自己定义 jstl函数 首先写类 package com.salesmanb2b. ...
- IT兄弟连 JavaWeb教程 使用JSTL函数
在JSTL Functions标签库中提供了一组常用的EL函数,主要用于处理字符串,在JSP中可以直接使用这些函数. 在JSP中使用Functions标签库,需要通过taglib指令引入该标签库: & ...
- 常用的JSTL函数
下面是JSTL中自带的方法列表以及其描述 函数名 函数说明 使用举例 fn:contains 判断字符串是否包含另外一个字符串 <c:if test="${fn:contains(na ...
- JSP标准标签库(JSTL)--函数标签库 fn
和String的方法类似,就是对String的一种封装. No. 函数标签名称 描述 1 ${fn:contains()} 查询某字符串是否存在,区分大小写 2 ${fn:containsIgnore ...
- jstl函数的使用
1.fn:contains()和fn:containsIgnoreCase() fn:contains()函数用于确定一个字符串是否包含指定的子串. fn:containsIgnoreCase()函数 ...
随机推荐
- 4Sum
Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = tar ...
- mysql体系结构
mysql逻辑架构: 第一层,即最上一层,所包含的服务并不是MySQL所独有的技术.它们都是服务于C/S程序或者是这些程序所需要的:连接处理,身份验证,安全性等等. 第二层值得关注.这是MySQL的核 ...
- zk回车事件
private Textbox testTextB; testTextB.addEventListener(Events.ON_OK, new EventListener<Event>() ...
- strcat、strcpy、memcpy 的使用注意
char *p = "hello";//5 个长度 ; //char *str = (char *)malloc(sizeof(char)*len); ] = "niha ...
- CSS3初学篇章_4(边框样式/段落样式)
边框样式 1.边框线语法:border-style : none | hidden | dotted | dashed | solid | double | groove | ridge | inse ...
- zju(4)使用busybox制作根文件系统
1.实验目的 1.学习和掌握busybox相关知识及应用: 2.学会使用交叉编译器定制一个busybox: 3.利用该busybox制作一个文件系统: 4.熟悉根文件系统组织结构: 5.定制.编译ra ...
- Mysql 性能调优之Memory 计算
最近在做mariadb 数据库性能调优时发现,配置文件影响着整个数据库的性能的百分之80(这么说不为过),现在就我出现的问题来分析. 在压测mariadb时,tail 日志.发现压测到一半 ,数据库会 ...
- Python 第一课
Python语言特点: 优雅,明确,简单 适合开发: Web网络和各种网络服务 系统工具和脚本 作为胶水语言把其他语言开发的模块包装起来方便使用 Python2.7.10的安装(path环境变量) ...
- block大小和分区最大容量单个文件最大容量的关系
block大小和单个文件最大容量的关系(文章来自鸟哥的Linux私房菜http://vbird.dic.ksu.edu.tw/linux_basic/0230filesystem_1.php#ps2) ...
- dom4j解析xml文档&保存数据的乱码问题
package itcast.dom4j; import java.io.File; import java.io.FileOutputStream; import java.io.FileWrite ...