如何使用JSTL循环遍历String中的每个字符?
答案 0 :(得分:11)
棘手使用fn:substring()
会做
<c:forEach var="i" begin="0" end="${fn:length(str)}" step="1">
<c:out value="${fn:substring(str, i, i + 1)}" />
</c:forEach>
答案 1 :(得分:1)
晚会,但EL 2.2允许实例方法调用(更多内容在此处:https://stackoverflow.com/a/7122669/2047962)。这意味着您可以通过几个字符缩短Jigar Joshi的答案:
<c:forEach var="i" begin="0" end="${fn:length(str)}" step="1">
<c:out value="${str.charAt(i)}" />
</c:forEach>
我只是建议这样做,因为你的代码正在做什么更明显。
答案 2 :(得分:0)
我认为你不能用JSTL的forEach做到这一点。您需要编写自己的标签或EL功能。以下是编写自定义标记的示例代码: http://www.java2s.com/Tutorial/Java/0360__JSP/CustomTagSupport.htm