2015-04-06 87 views
0

我的JSON字符串結構如下圖刪除JSON字符串的一部分,與使用正則表達式

... 
}],"twitter":[{"id": .... blaa"}]} 
... 

我試圖消除這部分如下

Regex.Replace(_VarJson, string.Format("{0}.*?{1}", "\"twitter\":[{", "\"}]"), string.Empty) 

但沒有消除。我的錯在哪裏?

預先感謝您

+0

'Regex.Replace' **返回**修改的*字符串。 – npinti 2015-04-06 10:50:39

+0

@npinti OK我該怎麼做?你能給一些樣品嗎? – Kerberos 2015-04-06 10:53:20

+0

不要使用正則表達式執行Json處理,任何級聯表示都應該使用*上下文無關語法*進行處理,或者使用JSON庫。 – 2015-04-06 10:56:39

回答

1

在您的正則表達式模式[{}]符號應\符號進行轉義,因爲它們是保留正則表達式符號([]代表charactrers組和{}代表重複計數)。

所以,你的更換可以做的

_VarJson = Regex.Replace(_VarJson, 
    string.Format("{0}.*?{1}", 
    "\"twitter\":\\[\\{", "\"\\}\\]"), 
    string.Empty); 

但我強烈@CommuSoft的意見同意張貼在評論 - 這是更好地使用一些JSON庫來解析源JSON,然後刪除所有你需要的對象模型並根據需要將JSON寫回爲文本。

相關問題