<c:forTockens>标签
<c:forTokens>标签与<c:forEach>标签类似,都可以完成迭代功能,只不过<c:forTokens>标签用于迭代字符串中用指定分隔符分隔的子字符,并且能重复执行标签体,其语法格式如下:
<c:forTokens items="StringOfTokens" delims="delimiters"
[var="varName"] [varStatus="varStatusName"]
[begin="begin"] [end="end"] [step="step"]>
body content
</c:forTokens>
在上述语法格式中,可以看到<c:forTokens>标签有多个属性,接下来将针对这些属性进行讲解,具体如下:
● items属性用于指定将要分隔的字符串;
● delims属性用于指定具体的分隔符,可以是一个或多个;
● var属性用于指当前迭代的元素保存到page域中的属性名称;
● varStatus用于指定当前迭代状态信息的对象保存到page域中的属性名称;
● begin属性用于指定从集合中第几个元素开始进行迭代;
● step属性用于指定迭代的步长,即迭代因子的增量。
为了使初学者更好的学习<c:forTokens>标签,接下来通过一个具体的案例来演示<c:forTokens>标签的使用,如例1所示。
例1 c_fortokens.jsp
1 <%@ page language="java" contentType="text/html; charset=utf-8"
2 pageEncoding="utf-8" import="java.util.*"%>
3 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
4 <html>
5 <head></head>
6 <body>
7 使用"|"和","作为分隔符<br>
8 <c:forTokens var="token"
9 items="Spring,Summer|autumn,winter" delims="|,">
10 ${token}
11 </c:forTokens>
12 <hr>
13 使用"--"作为分隔符<br>
14 <c:forTokens var="token" items="Day--Week--Month--Year" delims="--">
15 ${token}
16 </c:forTokens>
17 </body>
18 </html>
打开IE浏览器,在地址栏中输入http://localhost:8080/chapter08/c_fortokens.jsp
访问c_fortokens.jsp页面,此时,浏览器窗口中显示的结果如图1所示。
图1 c_fortokens.jsp
从图1可以看出,使用<c:forTokens>标签按照分隔符“|,”将字符串"Spring,Summer|autumn,winter"分割为Spring、Summer、autumn、winter,字符串"Day--Week--Month--Year"按照分隔符“--”分隔为Day、Week、Month、Year,并输出到浏览器。