Modifying cell arrays (mixed - string & numeric)
1 次查看(过去 30 天)
显示 更早的评论
[645836] 'TSTRCo23_b3_c' [646153] 'Co23_b3_c' [646449] 'RTCo23_b3_c' [646655] 'TEND_b3_c' [646157] 'Co01_b2_ic' [646678] 'Co06_b3_c' ....
I need to modify this to
[646153] 'C23c' [646157] 'C01i' [646678] 'C06c' ....
i.e. Only keep rows where the string starts with Co. BUT, replace the string 1) with C, 2) then the numeric value that follows Co, 3) then either c or i depending on whether the original string was appended with c or ic.
Thank you..
S
0 个评论
回答(1 个)
Matt J
2012-10-22
编辑:Matt J
2012-10-22
Well, the first step would be to get rid of the unwanted rows. That you can do easily enough by
keeprows=~cellfun('isempty', strfind(cellarray(:,2),'Co') );
cellarray=cellarray(keeprows,:);
Then you just have to go through what's left and modify the strings. Should be easy enough using REGEXPREP and/or STRREP
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!