MATLAB: Anyway to translate this command using ‘cellfun’

is member in 'cellfun'

Hi:
I have a cell array like below:
test{1}='1_xxxxx';
test{2}='2_xxxxx';
….
now I want to fine the location of '_' in each cell, below are my command:
for i=1:1:length(test)
loc{i}=ismember(test,'_');
end
to further improve my code, I found a 'cellfun' function, but I failed to find a way to translate the above command using 'cellfun'. is there anyway to do this?
Thanks!
Yu

Best Answer

  • Note that it is simpler to use strfind:
    >> C = strfind(test,'_');
    >> C{:}
    ans = 2
    ans = 2