我有一個準備好的地圖結構作為字符串文字。注意,它不是 JSON?。ú榭磯K的最后一個元素中的逗號)dict := `{ "ru": { "test_key": "Тестовый ключ", "some_err": "Произошла ошибка", }, "en": { "test_key": "Test key", "some_err": "Error occurs", },}`我想將此字符串轉換為地圖類型的實際值(map[string]map[string]string)。我需要它進行測試??赡軉??
1 回答

智慧大石
TA貢獻1946條經驗 獲得超3個贊
如果這只是為了測試,我會從源字符串中刪除“不需要的”逗號并使用 JSON 解組。
要刪除不需要的逗號:我會使用 regexp ,\s*},并將其替換為單個}.
例如:
dict = regexp.MustCompile(`,\s*}`).ReplaceAllLiteralString(dict, "}")
var m map[string]map[string]string
if err := json.Unmarshal([]byte(dict), &m); err != nil {
panic(err)
}
fmt.Println(m)
輸出(在Go Playground上試試):
map[en:map[some_err:Error occurs test_key:Test key] ru:map[some_err:Произошла ошибка test_key:Тестовый ключ]]
- 1 回答
- 0 關注
- 130 瀏覽
添加回答
舉報
0/150
提交
取消