c# 2D数组合并值



我有一个像这样的二维字符串数组(5*2):

string[,] data= new string[5, 2] {{"F1","LINK1"},
{"F1","LINK2"},
{"F2","LINK3"},
{"F3","LINK4"},
{"F3","LINK5"}};

我想把这些值分组并合并到一个新的数组中。

输出:

{"F1","LINK1,LINK2"},
{"F2","LINK3"},
{"F3","LINK4,LINK5"}

输出数组3*2。

像这样:

string[,] data= new string[5, 2] {{"F1","LINK1"},
{"F1","LINK2"},
{"F2","LINK3"},
{"F3","LINK4"},
{"F3","LINK5"}};
var items = Enumerable.Range(0, data.GetLength(0))
.Select(n => new {Key = data[n, 0], Link = data[n, 1]});
var query =
from i in items
group i by i.Key
into g
select new []
{
g.Key,
string.Join(",", g.Select(x => x.Link))
};
var result = query.ToArray();

最新更新