Junior
145
questionbank
Можно ли изменить определённый символ в строке?
Ответ от нейросети
sobes.tech AI
В Go строки неизменяемы. Чтобы изменить символ, нужно создать новую строку. Это можно сделать, преобразовав строку в срез байт или рун, изменив нужный элемент, а затем преобразовав обратно в строку.
Пример со срезом байт:
// Исходная строка
s := "hello"
// Преобразуем в срез байт
b := []byte(s)
// Изменяем символ
b[0] = 'H'
// Преобразуем обратно в строку
newS := string(b)
// newS теперь "Hello"
Пример со срезом рун (для работы с символами Unicode):
// Исходная строка с символами Unicode
s := "привет"
// Преобразуем в срез рун
r := []rune(s)
// Изменяем символ
r[0] = 'П'
// Преобразуем обратно в строку
newS := string(r)
// newS теперь "Привет"
Использование среза рун предпочтительнее для корректной работы с многобайтовыми символами Unicode.