Сравните быструю побайтовую asciiUpper (из L09) с рунной обработкой через таблицы. Реализуйте compare: верните результат обеих функций. Побайтовая версия не знает многобайтовых символов и оставит кириллицу строчной.
- Задача
- Решение
- Обсуждение
Compare: побайтово против таблиц
GolangРешение
func compare(s string) (asciiResult, unicodeResult string) {
var b strings.Builder
for _, r := range s {
b.WriteRune(unicode.ToUpper(r))
}
return asciiUpper(s), b.String()
}