Javascript 如何修复截断的字符串json以便能够再次解析它
我有一个在google日志中被截断的json字符串(由于某些原因无法修复)Javascript 如何修复截断的字符串json以便能够再次解析它,javascript,json,Javascript,Json,我有一个在google日志中被截断的json字符串(由于某些原因无法修复) JSON字符串类似于255000个字符,为了简单起见,原始JSON类似于 { "a": "1", "b" : [{ "b1": "<span>text b1</span>" }, { "b2": "<span>
JSON字符串类似于255000个字符,为了简单起见,原始JSON类似于
{ "a": "1",
"b" : [{
"b1": "<span>text b1</span>"
},
{
"b2": "<span>text b2</span>"
}],
"c": "3"
}
或
最好的方法是什么
我尝试了
脏json
库来修复,但实际上这对这种情况没有帮助恐怕你得自己动手了。但是你的方法听起来是一个很好的开始。npm包按预期工作
import untruncateJson from "untruncate-json";
const string = ` { "a": "1",
"b" : [{
"b1": "<spa... 34 characters truncated.`;
// remove non-json ending
const truncatedJson = string.replace(/\.\.\. \d+ characters truncated\.$/,'');
// run library
const untruncatedJson = untruncateJson(truncatedJson);
console.log(untruncatedJson);
从“untruncate json”导入untruncateJson;
常量字符串=`{“a”:“1”,
“b”:[{
“b1”:“我能想到的一件事是解析一个JSON.parse()错误,并根据错误文本Your's welcome;)进行修复
{ "a": "1",
"b" : [{
"b1": "<spa"
}]
}
{ "a": "1",
"b" : [{
"b1": ... 34 characters truncated.
{ "a": "1",
"b" : [{
"b1 ... 34 characters truncated.
import untruncateJson from "untruncate-json";
const string = ` { "a": "1",
"b" : [{
"b1": "<spa... 34 characters truncated.`;
// remove non-json ending
const truncatedJson = string.replace(/\.\.\. \d+ characters truncated\.$/,'');
// run library
const untruncatedJson = untruncateJson(truncatedJson);
console.log(untruncatedJson);
{ "a": "1",
"b" : [{
"b1": "<spa"}]}