How to find which column consists character 'example' in cell c{1,2}(:,1)

1 view (last 30 days)
so I have a cell called 'c', I want to know which column the characters 'example' exist in c{1,2}(:,1).... Is there a function that can do this? Or do I need to write my own loop?
What is the syntax for finding character within a cell?
Thanks

Answers (2)

George
George on 30 Sep 2016
strcmp(c{1,2}(:,1), 'example')
will return a logical array. You may need to surround 'example' with cellstr(), I can't recall.

dpb
dpb on 30 Sep 2016
Edited: dpb on 30 Sep 2016
So many possibilities of how things can be stored in cell arrays likely need a small example to see just what your arrangement actually is, but the following idiom is often useful...
s(~cellfun(@isempty,strfind(s,STRING)))
where s is the array and STRING is the target value looking for. The above returns those elements found;
ix=~cellfun(@isempty,strfind(s,STRING));
the indices into the cell array s the locations found containing STRING.
ADDENDUM
Is the following something like what you have, maybe?
>> c{2,1}='This is a string containing ''REPLACE'' within it'
c =
[]
'This is a string containing 'REPLACE' within it'
>> cellfun(@(s) strfind(s,'REPLACE'),c,'uniform',0)
ans =
[]
[30]
>>

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!