[英]Split a text with a regular expression
我試圖將文本切開並放入字典中,但我的文本結構不清晰:text:
{
"about": "where I'm meant to be...",
"bio": "Visit my official blog at:\n\nhttp://ABC.com/ \n\nAdd me on Twitter:\n\nhttp://www.ABC.com/ABC",
"category": "Public figure",
"is_published": true,
"location": {
"street": "",
"city": "Los Angeles",
"state": "CA",
"country": "United States",
"zip": ""
},
"talking_about_count": 254637,
"username": "ABC",
"website": "http://kimkardashian.celebuzz.com/\nhttp://www.twitter.com/kimkardashian\n",
"were_here_count": 0,
"id": "114696805612",
"name": "ABC",
"link": "http://www.ABC.com/ABC",
"likes": 0,
"cover": {
"cover_id": "000000000",
"source": "http://ABC.jpg",
"offset_y": 0,
"offset_x": 200
}
}
如您所見,我使用“,”作為分隔符,問題是存在一些組成的對象,例如:
"location": {
"street": "",
"city": "Los Angeles",
"state": "CA",
"country": "United States",
"zip": ""
},
這就是為什么我不能使用string.Split(' ');
我聽說過正則表達式,但我不知道如何使用它們,是否有任何解決方案可將這些信息分離成字典或任何其他結構
您的數據采用標准格式(JSON),並且已經為它編寫了解析器。 您可以通過Visual Studio中的NuGet輕松下載Json.NET。
正則表達式是一個強大的工具,可以使模式匹配更加簡單。 對我來說,就他們而言。 它們可以用來創建解析器和其他各種東西,但是很復雜。
因此,您可以使用正則表達式創建自己的JSON解析器,但這會花費很多時間。 當有鑰匙可用時,這就像建立一個鎖匙。
JavaScriptSerializer可能滿足您的需求
using System.Web.Script.Serialization;
var jss = new JavaScriptSerializer();
var dict = jss.Deserialize<Dictionary<string,string>>(jsonText);
Console.WriteLine(dict["some_number"]);
請參閱: http : //msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.