группировка по первому символу

Скрыть

Показать

Копировать
  Main.cs  
using System;
 
//добавить ссылку
using System.Linq;
 
class Program {
 public static int Main() {
 
  //источник данных
  string[] ara = new string[] {
   "a", "ab", "abc", "abcd","abcde", 
   "b","bc", "bcd","bcdef", "bcdef",
   "c", "cd","cde", "cdef","cdefg"
  };
 
  //создание запроса
  var query =
   from val in ara
   //сгруппировать val по 1 символу и записать в новую переменную N
   group val by val[0] into N
   select new { firstSimvol = N.Key, word = N };
 
  //выполнение запроса
  foreach(var i in query) {
   Console.WriteLine("---{0}---", i.firstSimvol);
   foreach(var j in i.word) {
    Console.WriteLine(j);
   }
   Console.WriteLine();
  }
 
  Console.ReadKey();
  return 0;
 }
}
 
---a---
a
ab
abc
abcd
abcde


---b---
b
bc
bcd
bcdef
bcdef


---c---
c
cd
cde
cdef
cdefg