Java parse знакомо до конца строкиJAVA

Программисты JAVA общаются здесь
Anonymous
Java parse знакомо до конца строки

Сообщение Anonymous »

Легкий вопрос - вероятно - но я не нахожу решение без обходного пути. < /p>

Я хочу проанализировать STH. Как < /p>

1) item1;; item3
2) item1;item2;
3) ; item2;
4) ;;
...
< /code>

У меня есть функция сопоставления, которая соответствует и возвращает все элементы в данном индексе как StringList: < /p>

public static List getAllMatchings(String input, String reg, int groupIndex) {
Pattern pattern = Pattern.compile(reg);
Matcher matcher = pattern.matcher(input);

List ls = new ArrayList();

while (matcher.find()) {
if (groupIndex

Теперь, имея такую ​​строку, я хочу иметь Stringlist, такой как {"item1", "item2", "item3"}. Но я получаю - используя мое решение - {"item1", "item2", "item3", ""}: < /p>

List strList = getAllMatchings(line, "([^;]*)(;|\\z)",1);
< /code>

И, таким образом, я должен сделать уродливый обходной путь: < /p>

strList.remove(strList.size()-1);
< /code>

Не очень хорошо. Но я не нахожу решение для этой проблемы. Может ли кто -нибудь помочь мне? Есть случай, когда этот обходной путь не работает. Случай 4) дает мне только 2 пустых элемента.

Подробнее здесь: https://stackoverflow.com/questions/152 ... nd-of-line

Вернуться в «JAVA»