我有以下字符串
MyKey1=MyVal1
MyKey2=MyVal2
MyKey3=MyVal3
MyKey3=MyVal3
所以首先,需要拆分成行,然后我需要用 ' =
' char 拆分每一行以从该行获取键和值。因此,我想要的是一个List<KeyValuePair<string, string>>
(为什么不是Dictionary
? => 列表中可能有重复的键),所以我不能使用.ToDictionary()
扩展名。
我非常坚持以下几点:
List<KeyValuePair<string, string>> fields =
(from lines in Regex.Split(input, @"\r?\n|\r", RegexOptions.None)
where !String.IsNullOrWhiteSpace(lines)
.Select(x => x.Split(new [] { '='}, 2, StringSplitOptions.RemoveEmptyEntries))
.ToList()
--> select new KeyValuePair? Or with 'let' for splitting by '='?
what about exception handling (e.g. ignoring empty values)