Jsp 如何使用拆分字符串。(带空格的句点)作为JSTL中的分隔符

Jsp 如何使用拆分字符串。(带空格的句点)作为JSTL中的分隔符,jsp,split,jstl,Jsp,Split,Jstl,我正在尝试使用拆分字符串。(带空格的句号)但由于某些原因,它在JSTL中不起作用 input: This is a sample text. Just to check the split. 以下语句使用时段(.)拆分值,因为delimter按预期工作 <c:set var="descArray" value="${fn:split(desc_highlighted,'.')}"/> <c:forEach var="indexVal" items="${descArray

我正在尝试使用拆分字符串。(带空格的句号)但由于某些原因,它在JSTL中不起作用

input: This is a sample text. Just to check the split.
以下语句使用时段(.)拆分值,因为delimter按预期工作

<c:set var="descArray" value="${fn:split(desc_highlighted,'.')}"/>  
<c:forEach var="indexVal" items="${descArray}">
            <c:set var="descValue" value="${descValue} ${indexVal} ."/> 
</c:forEach 

output: This is a sample text. Just to check the split.


这里的问题是
fn:split()
的第二个参数的工作方式类似于字符数组,而不是字符串。所以它在周期或空间上分裂,产生一个比你预期的大的数组。处理此问题的一种方法是使用
fn:replace()
将所有出现的
替换为单个字符。然后将返回的字符串传递给
fn:split()
。此示例使用管道

<c:set var="descArray" 
       value="${fn:split(fn:replace(desc_highlighted, '. ', '|'),'|')}"/> 

<c:set var="descArray" 
       value="${fn:split(fn:replace(desc_highlighted, '. ', '|'),'|')}"/>