解析字符串数组以检查有多少次值

hsi*_*sim 0 c# arrays asp.net-mvc loops

说我有这个字符串数组:

string[] arrayToParse = {2, G, R, G, B};
Run Code Online (Sandbox Code Playgroud)

我需要解析数组以检查字符串存在多少次,这样我最终可能得到如下值:

2
GG
R
B
Run Code Online (Sandbox Code Playgroud)

因此,每次循环检测到是否有另一个字符串相同时,他"连接",然后将值添加到列表中.

如果我采取另一个例子: string[] arrayToParse2 = {2, Q, T, T, U, U} 应该结束这些值:

2
Q
TT
UU
Run Code Online (Sandbox Code Playgroud)

有人帮忙吗?

Mar*_*zek 6

使用LINQ(GroupBy方法)和string.Join:

string[] arrayToParse = {"2", "G", "R", "G", "B"};

string[] results = arrayToParse.GroupBy(x => x)
                               .Select(g => string.Join(string.Empty, g))
                               .ToArray();
Run Code Online (Sandbox Code Playgroud)

适用于您的样本输入.