Finding cells with specific string in cell array and substituting them
24 views (last 30 days)
Show older comments
In a cell array named CC I search for a specific string, ' -' and I want to substitute the contents of all those cells with something else, e.g. '0'. When I perform the search using
[ii jj]=find(strncmpi(CC,' -',2))
I get the resulots in the form:
ii= 1
2
3
4
8
and
jj= 12
12
12
15
15
Now: how can I change the elements containg that string and having indexes ii & jj with '0'? I tried different form but cannot find a way to refer to elements of CC having ii & jj as row and column number.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/167864/image.png)
0 Comments
Accepted Answer
Jos (10584)
on 19 Dec 2017
You can simply use strrep to replace strings in a cell array:
CC = {'A',' -','B',' -','C'}
CCout = strrep(CC,' -', '0')
2 Comments
Jos (10584)
on 19 Dec 2017
Ah, your cell is a mixture of strings and numbers ...
CC(strcmpi(CC,' -')) = {0}
More Answers (1)
See Also
Categories
Find more on Cell Arrays in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!