Как распарсить строку в структуру Go?

В Go для распарсинга строки в структуру обычно используются пакеты encoding/json или encoding/xml, в зависимости от формата данных.

Для начала определите структуру данных, которая соответствует формату вашей строки. Например, если строка представлена в формате JSON, то создайте структуру, соответствующую JSON полям. Далее вам необходимо прочитать строку и распарсить её в указанную структуру.

Пример распарсинга строки JSON в Go:

package main

import (
	"encoding/json"
	"fmt"
)

type Person struct {
	Name string `json:"name"`
	Age  int    `json:"age"`
}

func main() {
	jsonString := `{"name": "Alice", "age": 30}`
	var person Person
	err := json.Unmarshal([]byte(jsonString), &person)
	if err != nil {
		fmt.Println("Ошибка при парсинге JSON:", err)
	}
	fmt.Println(person)
}

В данном примере мы определили структуру Person, создали JSON строку jsonString с данными о человеке и с помощью функции json.Unmarshal распарсили её в структуру Person.

Если у вас строка в формате XML, то аналогичный процесс, но с использованием пакета encoding/xml.

Кроме того, для более сложных форматов данных или кастомных структур можно использовать другие пакеты, например, github.com/gocolly/colly для парсинга HTML страниц.

Надеюсь, это поможет вам разобраться с парсингом строк в структуры в Go. Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать.