Вызов Matcher.find
находит следующий экземпляр совпадения или возвращает false, если их больше нет.Попробуйте позвонить ему три раза и посмотрите, есть ли у вас все ожидаемые группы.
Чтобы уточнить, m.group(1)
пытается найти первое выражение группы в вашем регулярном выражении .У вас есть только одно такое групповое выражение в вашем регулярном выражении, поэтому group(2)
никогда не будет иметь смысла.Вам, вероятно, нужно вызывать m.find()
в цикле, пока он не вернет false, захватывая групповой результат на каждой итерации.