我有一个对象,想将其表示为带有一些附加格式的字符串。
这是我的代码:
// stringify object and remove double quotations
let outPut = JSON.stringify(myObject).replace(/"/g, '')
// replace commas with new line character while comma is not part of an array
outPut = outPut.replace(/,/g, '\n') // this line replaces all commas
由于我的对象包含数组,并且我想在括号内保留逗号[...]
,我需要告诉replace
仅当逗号不在括号内时才匹配的函数。
我怎样才能实现这个目标?
输入字符串示例:
{
"glossary": {
"title": "example glossary",
"GlossDiv": {
"title": "S",
"GlossList": {
"GlossEntry": {
"ID": "SGML",
"SortAs": "SGML",
"GlossTerm": "Standard Generalized Markup Language",
"Acronym": "SGML",
"Abbrev": "ISO 8879:1986",
"GlossDef": {
"para": "A meta-markup language, used to create markup languages such as DocBook.",
"GlossSeeAlso": ["GML", "XML"]
},
"GlossSee": "markup"
}
}
}
}
}
我需要替换除里面的逗号之外的所有逗号["GML", "XML"]
.