拆分字符串并在第一次出现后获取全部-c#
我有一个收藏我想变成一本字典。代码如下:拆分字符串并在第一次出现后获取全部-c#,c#,string,C#,String,我有一个收藏我想变成一本字典。代码如下: myCollection.ToDictionary(item => item.Split('=')[0], item => item.Split('=')[1]); 作为一个集合,类似于: {"a=312d","b=dw234","c=wqdqw3=3") 问题出在第三个问题上。正如你所看到的,它里面有一个等号。这一个以及它后面的所有字符也是值的一部分(在字典中它应该是c:wqdqw3=3)。但是,正如你所想象的,我在我的字典中得到了类似
myCollection.ToDictionary(item => item.Split('=')[0], item => item.Split('=')[1]);
作为一个集合,类似于:
{"a=312d","b=dw234","c=wqdqw3=3")
问题出在第三个问题上。正如你所看到的,它里面有一个等号。这一个以及它后面的所有字符也是值的一部分(在字典中它应该是c:wqdqw3=3
)。但是,正如你所想象的,我在我的字典中得到了类似的东西a:312d,b:dw234,c:wqdqw3
如何更改它,使字典的值对于集合的每个元素都是第一个“=”之后的所有内容?IndexOf()
和Substring()
在这里应该有所帮助
string[] input = { "a=312d", "b=dw234", "c=wqdqw3=3" };
var result = input.ToDictionary(x => x.Substring(0, x.IndexOf('=')),
x => x.Substring(x.IndexOf('=') + 1));