之前一直都在用正则进行匹配,感觉实在太麻烦了,然后就看了一下go解析动态json数据,最后居然就可以了。。。
看来以后要多看看谷歌,不能太死板了,有更好的解决方法就没有必要坚持笨方法。
废话不多说,其实要实现非常简单,我们只需要用空的接口对象去解析就可以了。
var v interface{}
json.Unmarshal([]byte(data), &v)
然后得到的v就是接口对象啦!
不过我们还是不能直访问,需要我们转换接口对象转换一下,支持多级转换,比如
datas := v.(map[string]interface{})
for _,v:=range datas{
fmt.Println(v)
}
我们这里的json数据初始是map对象,key是map值是interface对象。
如果想解析里面的内容我们只需要继续解析一下就可以了。。