How to split a cell array by finding certain cells
显示 更早的评论
Say I have a cell that is something like
testCell = {'start', 1, 2, 3, 'start', 4, 5, 'start', 6, 7, 8, 9}
How can I split it into several separate cells so that I get something like
test1 = {'start', 1, 2, 3}
test2 = {'start', 4, 5}
test3 = {'start', 6, 7, 8, 9}
In the final program the length of the original cell, as well as the number of times 'start' appears isn't constant, and the data in between is sometimes numbers, sometimes strings, and occasionally has some empty cells (which can't be deleted)
Any help would be appreciated
采纳的回答
更多回答(1 个)
Andrei Bobrov
2015-8-3
编辑:Andrei Bobrov
2015-8-3
accumarray(cumsum(strcmp(testCell,'start'))',...
(1:numel(testCell))',[],@(x){testCell(x)})
类别
在 帮助中心 和 File Exchange 中查找有关 Testing Frameworks 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!