Дан строка вида
String fileStr= "['2', '3', ['b','a', ['A', 'B'], 'S', ['R'] ], 'G', ['Z']]";
Надо определить и закрыть скобки правильно.
Для определение использоваль StringBuilder и ArrrayList
StringBuilder str= new StringBuilder(fileStr);
ArrayList<Integer> tokenIndexStart = new ArrayList<>();
ArrayList<Integer> tokenIndexEnd = new ArrayList<>();
for (int i = 0; i < str.length() - 1; i++) {
if (str.charAt(i) == '[') {
tokenIndexStart.add(i);
} else if (str.charAt(i) == ']') {
tokenIndexEnd.add(i);
}
}
Теперь есть два списка первый содерижть индексы где лежать начало скобки, а во втором списке лежить индексы закрывающися скобки. Надо расставить так чтобы правильно они закрывались. Мне надо получить
1)['2', '3', ['b','a', ['A', 'B'], 'S', ['R'] ], 'G', ['Z']]
2)['b','a', ['A', 'B'], 'S', ['R'] ]
3)['A', 'B']
4) ['R']
5) ['Z']