Пока вам нужно извлечь только первую часть, я предлагаю IndexOf + Подстрока :
foreach (string item in eng.engList)
{
listBox1.Items.Add(item.Subsstring(0, item.IndexOf('-'));
}
Это будет самая быстрая (инаверное самый простой) способ.
// РЕДАКТИРОВАТЬс LINQ это будет примерно так:
listBox1.Items.AddRange(from item in eng.engList select item.Subsstring(0, item.IndexOf('-')));
с RegEX
foreach (string item in eng.engList)
{
listBox1.Items.Add(RegEx.Match(item, "[^-]*").ToString());
}
с RegEX и LINQ:
listBox1.Items.AddRange(from item in eng.engList select RegEx.Match(item, "[^-]*").ToString())