我正在尝试从golang中的method()
处理数据,输出采用此格式,即样本。
编辑: 功能是:
func MethodProcess()
{
dataList := dataList{}
//Call webservice method
webres = MethodFromWeb()
err := xml.Unmarshal(webres, &dataList)
return dataList
}
输出:
{{arg1}desc[{ High Low [InnerDescription]}]}
输出基本上不是json格式,所以如果我想将数据提取为" High",数据的格式是什么?
是否可以从中提取数据?
答案 0 :(得分:3)
我不认识那种数据格式。
您可以使用yacc创建的语法对其进行解析。
或使用regexp
的野蛮极简主义in := `{{arg1}desc[{ High Low [InnerDescription]}]}`
matcher := regexp.MustCompile(`^\{\{(.*?)\}(.*?)\[\{\s*(.*?)\s+(.*?)\s*\[(.*?)\]\}\]\}`)
match := matcher.FindStringSubmatch(in)
fmt.Printf("matches = %#v\n", match[1:])
fmt.Printf("High = %q\n", match[3])
打印
matches = []string{"arg1", "desc", "High", "Low", "InnerDescription"}
High = "High"