要转换为Dictionary的字符串数据

Raj*_*jat 1 c#

我有一个字符串

string data = "[City, Delhi]&[State, DL]&[Country, IN]";
Run Code Online (Sandbox Code Playgroud)

从中我想要一本字典.

我认为的方法是

  1. 拆分"&"
  2. 在结果数组中,解析每个元素2.1替换"["和"]"2.2插入字典

我讨厌这种方法,因为我的字符串已经有"["和"]",我应该可以直接添加到Dictionary.

Mik*_*son 5

这是正则表达式的一个很好的用例.

var d = Regex.Matches(data, @"\[(?<k>[^,]+), (?<v>[^]]+)\]")
    .OfType<Match>()
    .ToDictionary(m => m.Groups["k"].Value, m => m.Groups["v"].Value);
Run Code Online (Sandbox Code Playgroud)