🟡 Средний · 2 очк. Строки и руны
Что вернёт strings.Cut("host:8080", ":")?
A "host", "8080", true
B "host", ":8080", true
C ["host", "8080"]
D "host:8080", "", false
Объяснение вопроса

strings.Cut(s, sep) (Go 1.18) разрезает строку по первому вхождению разделителя и возвращает три значения: before, after, found.

before, after, found := strings.Cut("host:8080", ":")
// before = "host", after = "8080", found = true

Когда разделитель не найден

Если sep не встречается, before == s, after == "", found == false. Не будет panic и лишних проверок.

Зачем использовать

Удобная замена связке strings.Index + срезы. Часто нужна именно "первая часть до разделителя" и "остаток" - например, парсинг "host:port" или "key=value".

🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.