Back to questions
Самокат
Junior — Middle
96
Как осуществляется обработка и управление строковыми данными в языке Go?
Companies where asked
Эрливидео
GsmSoft
Answer from AI
sobes.tech AI
В языке Go строки представлены типом string, который является неизменяемой последовательностью байтов в кодировке UTF-8. Основные особенности и подходы к работе со строками:
- Неизменяемость: строки нельзя изменить после создания. Для изменения нужно создавать новые строки.
- Работа с Unicode: поскольку строки в UTF-8, для работы с символами (рунами) используют тип
rune. - Конкатенация: строки можно объединять с помощью оператора
+. - Преобразование в срез байтов или рун: для манипуляций с отдельными символами или байтами.
- Пакет
strings: содержит множество функций для поиска, замены, разбиения и других операций со строками.
Пример обработки строки в Go:
package main
import (
"fmt"
"strings"
)
func main() {
s := "Привет, мир"
fmt.Println("Длина строки в байтах:", len(s))
// Преобразование в срез рун для подсчёта символов
runes := []rune(s)
fmt.Println("Количество символов:", len(runes))
// Проверка наличия подстроки
if strings.Contains(s, "мир") {
fmt.Println("Строка содержит 'мир'")
}
// Замена подстроки
newStr := strings.ReplaceAll(s, "мир", "Go")
fmt.Println(newStr)
}