Невозможно разобрать символ ^

Хорошо, теперь я могу разобрать пространство, которое было моей предыдущей проблемой. Теперь мой парсер почти готов, но есть дефект, который я не могу найти.

Я могу получить данные после сегментов (см. Код) и данные между каналами. Я не могу добраться до уровня и получить данные, которые находятся между каналами и разделены ^.

Например.

Input String is A|1|2|3^4|
Expected Output
element1        A
element2        1
element3        2
element4.1      3
element4.2      4

Тем не менее, мой текущий выходной будет

element1        A
element2        1
element3        2
element4       3^4

Я получаю исключение 1 [Ljava.lang.String; @ 1786e64 с различными идентификаторами после @

Код комментария, приведенный ниже, создает проблему.

КОД:

Scanner scanner = new Scanner(System.in);
str=scanner.nextLine();
System.out.println(str);
segments="(A)|(B)|(C)|(D)";
pipe="[\\s+\\|+\\+]";
carat="[\\^+]";
for(i=0;i<token_type1.length;i++)
{
token_type2=token_type1[i].toString().split(pipe);
for(j=0;j<token_type2.length;j++)
{           
/*
token_type3=token_type2.toString().split(carat);    
for(k=0;k<token_type3.length;k++)
System.out.println("\t"+(k+1)+" "+token_type3[k]);
*/
System.out.println((j+1)+"\t"+token_type2[j]);
}
System.out.println();
}

Пожалуйста, порекомендуйте.

Ответы на вопрос(3)

Ваш ответ на вопрос