對于給定的純 JSON 數據,請執行以下格式:用下劃線替換key 中的所有特殊字符刪除鍵雙引號將 : 替換為 =例子:JSON 數據:{"no/me": "139.82", "gc.pp": "\u0000\u000", ...}格式化后:no_me="139.82", gc_pp="\u0000\u000"是否可以使用正則表達式?或任何其他單個命令執行?
2 回答
哆啦的時光機
TA貢獻1779條經驗 獲得超6個贊
整個更改的單個正則表達式可能會過大。我認為您可以編寫類似于以下內容的代碼:
(注意:因為我不會用 Java 編寫代碼,所以我的示例是用 javascript 編寫的,只是為了讓您了解它)
var json_data = '{"no/me": "139.82", "gc.pp": "0000000", "foo":"bar"}';
console.log(json_data);
var data = JSON.parse(json_data);
var out = '';
for (var x in data) {
var clean_x = x.replace(/[^a-zA-Z0-9]/g, "_");
if (out != '') out += ', ';
out += clean_x + '="' + data[x] + '"';
}
console.log(out);
基本上,您遍歷鍵并清理它們(刪除不需要的字符),使用新鍵和原始值創建一個具有您喜歡的格式的新字符串。
重要提示:請記住重疊的 ID。例如,兩者no/me和no#me將重疊成相同的 id no_me。這可能并不重要,因為您畢竟沒有輸出 JSON。我告訴你以防萬一。
添加回答
舉報
0/150
提交
取消
