Вы берете первый ключ первой колонки, получаете список строк.
Получаете строку, вынимаете ключи для второй колонки.
a;b;c
a;d;e
x;y;z
o;b;s
s;y;n
b;z;c
a;o;w
u;h;j
;p;
q;;g
;;o
t;;
;;
[0, 1, 6]
[0, 3]
[0, 5]
[2, 4]
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
Объединив например F + X???
получим еще 1 группу???
ЗЫ И это плохой тон - работать напрямую с Throwable или Exception. Нужно обрабатывать конкретный эксепшн (эксепшн конкретного класса), или брать его непосредственного родителя (то есть идти снизу иерархии, а не сверху).