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()函数 ...
随机推荐
- WinForm timer控件
timer 控件:按用户定义的时间间隔引发的事件 属性: Enabled 是否启用: Interval 事件发生的事件间隔,单位是毫秒 事件只有一个:Tick 事件经过指定的时间间隔 ...
- hdu N皇后问题
此题是很基本的dfs的题目 ,但是要打表,否则会超时. 这题的思路就是从第一行一直放到第n行,因此行方面的判断就可以省略了.因此只要判断列方面和斜线方面是否满足条件,列方面用一个vis数组来记录是否已 ...
- 汇编寄存器(内存访问)基础知识之三---mov指令
1 内存中字的存储 一个字型数据占2个内存单元,内存里面一个内存单元一个字节(8位),高地址单位放高8位,低地址单元放低8位. 注意:0号是地址单元,1是高地址单元(上是低地址,下面是高地址) (1 ...
- zju(7)ADC操作实验
1.实验目的 1.学习和掌握S3C2410下ADC接口的操作方法以及应用程序的编写: 二.实验内容 1.编写EduKit-IV实验箱Linux操作系统下按键ADC的应用程序,并显示ADC的值. 三.主 ...
- '/test.txt'; // 把抓取的代码写入该文件
将获得的代码直接写入某个文件 代码如下:<?php $urls = array( 'http://www.sina.com.cn/', 'http://www.sohu.com/', 'ht ...
- 【iCore3 双核心板】例程二:读取arm按键状态
实验指导书及代码包下载: http://pan.baidu.com/s/1sjrHnM9 iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...
- mysql替换制定的内容的 类似正则表达式的功能
content= 'asnfojassozxpdsgdspdps神龙架谁骄傲的骄傲搜ID飞机扫' SELECT content FROM test WHERE id =1 吧zx替换成ZZZZ UPD ...
- CSS成长之路----知识点篇
一,ul--li列表水平排列,切居中对齐 主要是利用Li标签中的display属性.设置为display:inline,使li纵向排布,且能够使用text-align:center;使其居中显示 HT ...
- 【翻译】How To Tango With Django 1.5.4 第二章
2.开始吧! 准备好两个关键的安装包 Python version 2.7.5 Django version 1.5.4 2.1熟悉你自己的系统(我的是windows) 略 2.2安装软件 2.2.1 ...
- Android高级第十一讲之不同系统间的区别
本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! Android系统不断的升级,从基础到中级再到高级,逐步升级是软件工程敏捷开发的一个重点,在每个版本 ...