fn函数JSTL1.1标签库还包含了许多其它经常使用的函数: fn:contains(string, substring)如果参数string中包含参数substring,返回truefn:containsIgnoreCase(string, substring)如果参数string中包含参数substring(忽略大小写),返回truefn:endsWith(string, suffix)如果参数 string 以参数suffix结尾,返回truefn:escapeXml(string)将有特殊意义的XML (和HTML)转换为对应的XML character entity code,并返回fn:indexOf(string, substring)返回参数substring在参数string中第一次出现的位置fn:join(array, separator)将一个给定的数组array用给定的间隔符separator串在一起,组成一个新的字符串并返回。fn:length(item)返回参数item中包含元素的数量。参数Item类型是数组、collection或者String。如果是String类型,返回值是String中的字符数。fn:replace(string, before, after)返回一个String对象。用参数after字符串替换参数string中所有出现参数before字符串的地方,并返回替换后的结果fn:split(string, separator)返回一个数组,以参数separator 为分割符分割参数string,分割后的每一部分就是数组的一个元素fn:startsWith(string, prefix)如果参数string以参数prefix开头,返回truefn:substring(string, begin, end)返回参数string部分字符串, 从参数begin开始到参数end位置,包括end位置的字符fn:substringAfter(string, substring)返回参数substring在参数string中后面的那一部分字符串fn:substringBefore(string, substring)返回参数substring在参数string中前面的那一部分字符串fn:toLowerCase(string)将参数string所有的字符变为小写,并将其返回fn:toUpperCase(string)将参数string所有的字符变为大写,并将其返回fn:trim(string)去除参数string 首尾的空格,并将其返回主要是替换 < sql:setDataSource var = " dataSrc " url = " jdbc:jtds:sqlserver://localhost/LOG_DB " driver = " net.sourceforge.jtds.jdbc.Driver " user = " sa " password = " admin " /> <%-- Set number of rows to process --%> < c:set var = " noOfRows " value = " 100 " /> < c:set var = " msg " value = " select top 100 * from L_ips_tb where id> (select max (id) from (select top ard id from L_ips_tb order by id) as T) order by id " /> < c:set var = " test " value = " ${fn:replace(msg,'ard',100)} " /> < c:out value = " ${test} " /> < sql:query var = " empList " sql = " ${test} " dataSource = " ${dataSrc} " /> < c:out value = " ${fn:length(empList.rows)} " /> 使用反射 < c:setvar = " arrayvalue " value = " ID,SrcIP " /> < c:setvar = " delim " value = " , " /> < c:setvar = " array " value = " ${fn:split(arrayvalue,delim)} " /> < c:setvar = " count " value = " ${fn:length(array)} " /> array是一个String数组,loghistory是一个Map < c:forEachvar = " loghistory " items = " ${loghistory} " varStatus = " statusindex " > < c:forEachbegin = " 0 " end = " ${count-1} "" varStatus= " index " > < c:outvalue = " ${loghistory[array[index.index]]} " /> </ c:forEach > < c:choose > 使用二维数组 < c:forEach items = " ${applicationScope[param.answersMapName]} " var = " a " > $ ... {a.key} ) $ ... {a.value} : $ ... {applicationScope[param.votesMapName][a.key]} < br > </ c:forEach〉