Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linq-列表的列表_Linq - Fatal编程技术网

Linq-列表的列表

Linq-列表的列表,linq,Linq,我有一个如下的清单 var stringCollection = {"X","1", "2","X","5", "10","X","7", "9"} SibList1 = {"X","1", "2"} SibList2 = {"X","5", "10"} SibList3 = {"X","7", "9"} 现在我需要一个列表列表,每个子列表如下所示 var stringCollection = {"X","1", "2","X","5", "10","X","7", "9"} SibLis

我有一个如下的清单

var stringCollection = {"X","1", "2","X","5", "10","X","7", "9"}
SibList1 = {"X","1", "2"}
SibList2 = {"X","5", "10"}
SibList3 = {"X","7", "9"}
现在我需要一个列表列表,每个子列表如下所示

var stringCollection = {"X","1", "2","X","5", "10","X","7", "9"}
SibList1 = {"X","1", "2"}
SibList2 = {"X","5", "10"}
SibList3 = {"X","7", "9"}
可以使用linq吗

问候 Krish试试这个

string[] stringCollection = { "X", "1", "2", "X", "5", "10", "X", "7", "9" };
int index = 0;
var subLists = stringCollection
    .Select(x => new { i = (x == "X" ? ++index : index), s = x })
    .GroupBy(x => x.i)
    .Select(x => x.Select(y => y.s).ToArray())
    .ToArray();

每个子列表可能重复3个元素,或者可能会有所不同,比如当你再次遇到一个x时,它只会重置?@sovemp无论哪种方式,都有一个足够好的重复:非常聪明,我认为这是一个比另一篇文章中给出的更好的解决方案。