JSTL标签库是一个用于开发Java Web应用程序的标准标签库,它提供了一组标准的JSP标记,可以帮助开发人员更轻松地实现Web应用程序的功能。JSTL标签库包含了四个不同的子集:Core、XML、Formatting和SQL。
Core 标签:这些标签提供了基本的功能,如条件判断、循环和对URL进行重定向。 XML 标签:这些标签提供了对XML文档进行处理的功能,如解析XML文档、遍历XML文档中的元素和属性以及将XML文档转换为HTML页面。 Formatting 标签:这些标签用于处理日期、数字和字符串数据。 SQL 标签:这些标签用于处理数据库中的数据,如执行SQL语句、遍历ResultSet对象中的数据以及将ResultSet对象中的数据映射到JavaBean对象中。
在JSTL标准标签库中,函数标签库fn:substring()方法比较特殊,语法为:
${fn:substring(<string>,<beginIndex>,<endIndex>)}
功能:从字符串string中,截取从起始索引值开始(包含),到终止索引值结束(不包含)的子字符串。
该标签类似Excel中的MID函数,其语法结构为:
MID(text, start_num, num_chars)
其中 start_num 相当于这里的 beginIndex,只是起始编号为 1;num_chars 代表子文本的长度。
对于fn:substring()方法,网上许多资料以字符串“This is first String.”为例,演示了 ${fn:substring("This is first String.", 5, 15)} 的运行结果,但并未提示“子字符串是不包含终止索引值对应的字符元素”这一要点,在此特别强调一。个人认为,该标签语法结构若改为如下形式更便于理解:
${fn:substring(<string>,<beginIndex>,<beginIndex>+<substringLength>)}
这样,参数3就变成了子字符串首字符索引值 beginIndex 与子串总长 substringLength 的和,这样对于 ${fn:substring("This is first String.", 5, 15)} 就可以理解为:从原字符串索引值为5的字符开始,截取10个字符(=15-5)所形成的子字符串。
<body>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<h1>JSTL函数标准标签库之fn:substring()方法示例</h1>
<h3>语法:<%="${fn:substring(<string>, <beginIndex>, <endIndex>)}" %></h3>
<hr>
<c:set var="strDemo" value="This is first String."/>
<h3>原字符串为:<c:out value="${strDemo}"/></h3>
<h3><%="${fn:substring(strDemo, 5, 0)}" %> =
"<c:out value="${fn:substring(strDemo, 5, 0)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, -0.4)}" %> =
"<c:out value="${fn:substring(strDemo, 5, -0.4)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, -0.5)}" %> =
"<c:out value="${fn:substring(strDemo, 5, -0.5)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, -0.6)}" %> =
"<c:out value="${fn:substring(strDemo, 5, -0.6)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, -1.0)}" %> =
"<c:out value="${fn:substring(strDemo, 5, -1.0)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, -1.4)}" %> =
"<c:out value="${fn:substring(strDemo, 5, -1.4)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, -1.5)}" %> =
"<c:out value="${fn:substring(strDemo, 5, -1.5)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, -1.6)}" %> =
"<c:out value="${fn:substring(strDemo, 5, -1.6)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, 15.0)}" %> =
"<c:out value="${fn:substring(strDemo, 5, 15.0)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, 15.4)}" %> =
"<c:out value="${fn:substring(strDemo, 5, 15.4)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, 15.5)}" %> =
"<c:out value="${fn:substring(strDemo, 5, 15.5)}" />"</h3>
<h3><%="${fn:substring(strDemo, 5, 15.6)}" %> =
"<c:out value="${fn:substring(strDemo, 5, 15.6)}" />"</h3>
</body>
Swift教程 -Swift布尔布尔值可以为true或false。布尔值用于帮助评估逻辑表达式。要声明一个布尔值,您可以立即分配值,或者您可...
Swift repeat...while 循环Swift 循环Swift repeat...while 循环不像 for 和 while 循环在循环体开始执行前先判断条件语句,而是...
Swift 函数用来完成特定任务的独立的代码块。Swift使用一个统一的语法来表示简单的C语言风格的函数到复杂的Objective-C语言风格...