/ / JSTL сплит пази празни или празни низове - разделяне, jstl, запазване

Разделяне на JSTL поддържа празни или празни струни - разделяне, запазване на jstl

Опитвам се да използвам JSTL сплит на низ, който има "|" като разделител. Ако обаче няма стойност между тях, разделението пропуска това в крайния масив.

напр .: abc | def || jkl

искам масивът да съдържа (4 елемента) "ABC; "Дефиниция" "" "JKL"

но разделението прескача празната стойност и получавам само 3 елемента.

Знам, че в js можем да добавим параметъра -1, за да избегнем този проблем. Как да решим това в JSTL?

Всяка помощ тук ще бъде много благодарна.

Отговори:

0 за отговор № 1

Според спецификацията, fn:split вътрешно използване StringTokenizer и за това поведението е същото като StringTokenizer.

Затова смятам, че е трудно да се приложи само от JSTL. Едно възможно решение е да се използва java.lang.String.split(), Например следния код:

<% request.setAttribute("strings", "abc|def||jkl".split("\|")); %>
<c:forEach var="string" items="${strings}" varStatus="status">
<c:out value="${status.index}"/>:<c:out value="${string}"/>
</c:forEach>

разпечатва:

0:abc 1:def 2: 3:jkl