Golang_HomeWork/hw02_unpack_string
Andrey Ivanov 3af00fd66b HW2 is completed 2020-06-10 15:01:14 +03:00
..
README.md HW2 is completed 2020-06-08 11:12:16 +03:00
go.mod gomod чудит 2020-06-07 20:12:12 +03:00
go.sum gomod чудит 2020-06-07 20:12:12 +03:00
unpack.go HW2 is completed 2020-06-10 15:01:14 +03:00
unpack_test.go HW2 is completed 2020-06-10 15:01:14 +03:00

README.md

Домашнее задание №2 «Распаковка строки»

Build Status

Необходимо написать 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 баллов

Подсказки