通过分隔符将列表拆分为子列表而不是通过C#中的索引

时间:2014-09-23 16:14:59

标签: c#

我读到了这个问题:Split List into Sublists with LINQ但是对于以下问题我没有帮助。

我有以下列表

18
0
abcde
678
-----
23
1
abcde

-----
66
4
3rwer
1
another item

如何通过-----分隔符将此列表拆分为子列表?

由于

1 个答案:

答案 0 :(得分:2)

我不知道现有的运算符在LINQ to Objects本身中执行此操作,MoreLINQ project更多地使用Split方法,因此您可以使用:

var sections = originalList.Split("-----");

返回IEnumerable<IEnumerable<string>> - 如果您需要列表列表,可以使用:

var sections = originalList.Split("-----")
                           .Select(section => section.ToList())
                           .ToList();

MoreLINQ有一个NuGet package您可能希望用于安装。