我有一个字符串的单元格数组。我需要为每个项目提取1到1个字符。字符串总是长于n个字符。请参阅:
data = { 'msft05/01/2010' ;
'ap01/01/2013' }
% For each string, last 10 characters are removed and put it in the next column
answer = { 'msft' '05/01/2010' ;
'ap' '01/01/2013' }
是否可以使用矢量化解决方案?我尝试过使用cellfun但没有成功。感谢。
答案 0 :(得分:3)
data = { 'msft05/01/2010' ;
'ap01/01/2013' };
for i = 1:length(data)
s = data{i};
data{i} = {s(1:end-10) s(end-9:end)};
end
很抱歉,没有注意到你需要矢量化......也许我只能建议一行...
data = cellfun(@(s) {s(1:end-10) s(end-9:end)}, data, 'UniformOutput', false);