using System;
using System.Linq;
public class Test
{
public static void Main()
{
var names = new[] {
"DOG_BOB",
"CAT_ROB",
"DOG_DANNY",
"MOUSE_MICKEY",
"DOG_STEVE",
"HORSE_NEIGH",
"CAT_RUDE",
"HORSE_BOO",
"MOUSE_STUPID",
};
var grouped = names.GroupBy(s => s.Substring(0, s.IndexOf("_")))
.Select(g => string.Join(",", g.ToArray()))
.ToArray();
Console.Write(string.Join("\n", grouped));
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKCgpwdWJsaWMgY2xhc3MgVGVzdAp7CglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCgl7CgkJICAgIHZhciBuYW1lcyA9IG5ld1tdIHsKICAgICAgICAJCSJET0dfQk9CIiwKICAgICAgICAJCSJDQVRfUk9CIiwKICAgICAgICAJCSJET0dfREFOTlkiLAogICAgICAgIAkJIk1PVVNFX01JQ0tFWSIsCiAgICAgICAgCQkiRE9HX1NURVZFIiwKICAgICAgICAJCSJIT1JTRV9ORUlHSCIsCiAgICAgICAgCQkiQ0FUX1JVREUiLAogICAgICAgIAkJIkhPUlNFX0JPTyIsCiAgICAgICAgCQkiTU9VU0VfU1RVUElEIiwKICAgICAgICAJfTsKCiAgICAgICAgICAgIHZhciBncm91cGVkID0gbmFtZXMuR3JvdXBCeShzID0+IHMuU3Vic3RyaW5nKDAsIHMuSW5kZXhPZigiXyIpKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5TZWxlY3QoZyA9PiBzdHJpbmcuSm9pbigiLCIsIGcuVG9BcnJheSgpKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5Ub0FycmF5KCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgQ29uc29sZS5Xcml0ZShzdHJpbmcuSm9pbigiXG4iLCBncm91cGVkKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCX0KfQ==