## Домашнее задание №2 «Распаковка строки» [![Build Status](https://travis-ci.com/tiburon-777/HW_OTUS.svg?branch=master)](https://travis-ci.com/tiburon-777/HW_OTUS) Необходимо написать Go функцию, осуществляющую примитивную распаковку строки, содержащую повторяющиеся символы/руны, например: * "a4bc2d5e" => "aaaabccddddde" * "abcd" => "abcd" * "3abc" => "" (некорректная строка) * "45" => "" (некорректная строка) * "aaa10b" => "" (некорректная строка) * "aaa0b" => "aab" * "" => "" * "d\n5abc" => "d\n\n\n\n\nabc" Как видно из примеров, разрешено использование цифр, но не чисел. В случае, если была передана некорректная строка, функция должна возвращать ошибку. При необходимости можно выделять дополнительные функции / ошибки. **(*) Дополнительное задание: поддержка экранирования через `\`:** * "qwe\4\5" => "qwe45" * "qwe\45" => "qwe44444" * "qwe\\\5a" => "qwe\\\\\\\\\\a" * "qw\\\ne" => "" (некорректная строка) Как видно из примера, заэкранировать можно только цифру или слэш. ### Критерии оценки - Пайплайн зелёный - 4 балла - Добавлены новые юнит-тесты - до 4 баллов - Понятность и чистота кода - до 2 баллов - Дополнительное задание на баллы не влияет #### Зачёт от 7 баллов ### Подсказки - https://golang.org/ref/spec#String_literals - `unicode.IsDigit` - `strings.Builder` - `strings.Repeat` - `strconv.Atoi`