Строки и группы символов c++
Есть такое задание :
Дан текст, каждый символ которого может быть малой буквой, цифрой или одним из знаков +,-,* *. Группой букв будем называть такую совокупность последовательно расположенных букв, которой непосредственно не предшествует и за которой непосредственно не следует буква. Аналогично определим группу цифр и группу знаков. Если в тексте больше двух групп букв, то между первой и второй группой букв + заменить на 1, - на 2, * *на 3, иначе оставить без изменений.
Я почти всё поняла. Кроме одного - как найти эти самые группы букв? Перебором строки с помощью цикла, да, но как понять, что это первая, а это вторая группа?
Источник: Stack Overflow на русском