0
我得到一個JSON字符串,它在一個數據字段中包含另一個JSON字符串,用\和\「\」包圍。我喜歡在解析它們之前刪除它們。我用正則表達式替換:正則表達式:從JSON字符串中刪除轉義字符
var data = evt.data.replace(/\\\"/g,"\"");
data = data.replace(/\"\{/g,"{");
data = data.replace(/\}\"/g,"}");
輸入字符串:
{"data":[{"beehive":"yaylaswiese","gamestate":"{\"currentGame\":\"StorieS3\"}","magicspell":"","sid":"40cc9dba822746fd572cece0416b320426759cc8"}],"sid":"login"}
應該是:
{"data":[{"beehive":"yaylaswiese","gamestate":{"currentGame":"StorieS3"},"magicspell":"","sid":"40cc9dba822746fd572cece0416b320426759cc8"}],"sid":"login"}
我的作品,但它看起來很複雜,以取代\ 「用」,「{與{和}「與}
有沒有更簡單的解決方案?
請張貼輸入字符串的示例。看起來你應該能夠解析外部字符串,然後定位包含內部字符串的元素並分別解析該字符串。 – 2015-02-08 19:24:38
我在上面添加了它。 – Michael 2015-02-08 19:29:17
你如何得到這個字符串?內部的一個應該是可解析的,假設整個東西被加載到一個對象'JSON.parse(obj.data [0] .gamestate)' – 2015-02-08 19:41:23