同じ要素が途切れるところで分割する拡張メソッドがほしかったのでMoreLINQや他のサイトを探したのですが、 それらしいのが見当たらなかったので実装しました。 やりたいことはこんな感じです。※GroupByとかLookupではありません。 [1, 1, 1, 2, 2, 3, 3, 4, 1, 1] → [[1, 1, 1], [2, 2], [3, 3], [4], [1, 1]] ただ、もう少し拡張性がほしいので、規則性に基づいて要素を分割する拡張メソッドにしました。 では実装です。 public static IEnumerable<IEnumerable<T>> SplitByRegularity<T>( this IEnumerable<T> source, Func<List<T>, T, bool> predicate) { using (var enumerator = s