Итак, у меня есть список строк, который выглядит так:
var ls=new List<string>()
{
"100",
"101-102-1002",
"105-153-1532-1532",
"105-1854-45-198",
"180-95-45-200"
};
Я хочу получить вторую последнюю из разделенной строки. Поэтому мой вывод выглядит следующим образом:
null,
102,
1532,
45,
45
У меня есть решение для него, которое выглядит так:
ls.Select (l =>l.Split('-').Select ((s,i) =>new {s,i})
.OrderByDescending (x=>x.i).Skip(1).Take(1))
Я думаю, что это решение может быть сложным для этой простой задачи. Поэтому мой вопрос: у кого-нибудь из вас есть более простое решение этой проблемы?