Я бы прочитал каждый символ, проверка есть буква, чем принять следующий символ, проверьте, является ли его число, а не просто добавьте к полученной строке букву раз.
В вашем примере, Первое, что я хотел бы прочитать, это a, a - письмо, поэтому читайте дальше, проверьте, есть ли его номер. Поэтому добавьте в результирующую строку пять a.
Используйте время цикла, например, для добавления буквы.
UPDATE
Explaning мой комментарий лучше.
Итак, вы перебираете строку.
индекс 0 у вас есть 'a'. Итак, вы читаете письмо, затем вы ожидаете получить номер, который равен 5.
Теперь я разделил строку на другую строку. Первый будет иметь все до тех пор, пока a, которое в этом случае будет только a.
Второй будет иметь все после того, как числа, в данном случае 5, который будет b1c0d5a1a1
Так возьмите первую строку, сцепить с 4 (5-1, у вас уже есть первый а) затем конкатенация с остальной частью строки.
string = b1c0d5a1a1
string = substring(0,1) + "aaaa" + substring(1,stringsize-1);
В таких случаях, как 0, вы можете играть с индексами подстроки, так что вы можете удалить письмо, вместо того, чтобы добавлять еще немного.
расширить его как? какой язык? –
Я редактировал вопрос. Любой язык C/Java в порядке. Мне не нужен код. Просто логика. –
Что случилось с d5? –