采用正則表達式去除;
方法
/// <summary> /// 去除json key雙引號 /// </summary> /// <param name="jsonInput">json</param> /// <returns>去除key引號</returns> public string JsonRegex(string jsonInput) { string result=string.Empty; try { string pattern = "\"(\\w+)\"(\\s*:\\s*)"; string replacement = "$1$2"; System.Text.RegularExpressions.Regex rgx = new System.Text.RegularExpressions.Regex(pattern); result = rgx.Replace(jsonInput, replacement); } catch (Exception ex) { result = jsonInput; } return result; }
測試案例:
json:{"action_r": [{"spr": "1", "mas": "21", "mgt": "入職"}, {"spr": "1", "mas": "22", "mgt": "轉崗"}]}
public string PA_Test() { string str = "{\"action_r\": [{\"spr\": \"1\", \"mas\": \"21\", \"mgt\": \"入職\"}, {\"spr\": \"1\", \"mas\": \"22\", \"mgt\": \"轉崗\"}]}"; str = this.JsonRegex(str); return str; }
返回結果:
{action_r: [{spr: "1", mas: "21", mgt: "入職"}, {spr: "1", mas: "22", mgt: "轉崗"}]}
參考:
http://bbs.csdn.net/topics/330267907
http://www.cnblogs.com/cexm/p/6322011.html
http://www.jb51.net/article/21529.htm
http://blog.csdn.net/graceMeMe/article/details/37562327?locationNum=9