How to search for substring in cell array and get the corresponding index then?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Dear community,
i have a very big 3D cell array that contains either doubles or strings. I need to find the cells that contain the string EXPERIMENT with the given index of my cell array.
I already tried approaches like strcmp or strfind, but I am still stuck.
Below is a picture of a subset of the cell array.
Thank you in advance,
Paul
0 commentaires
Réponse acceptée
Askic V
le 7 Déc 2022
Please have a look at the following example:
C1 = {'Smith','Chung','Morales' [4 5 6]; ...
'Sanchez','Peterson',1:15,'Adams';...
'Adams','Johnson',[2.1 4.2],'Adams'}
C2 = cellfun(@num2str,C1,'UniformOutput',false)
C3 = strfind(C2, 'Ada')
ind = ~cellfun('isempty', C3)
I think you should be able to use it in your own application. C1 becomes your val
0 commentaires
Plus de réponses (1)
GeeTwo
le 7 Déc 2022
If I'm understanding correctly,
cellfun(@numel,strfind(string(val),"EXPERIMENT"))
will give you a matrix with 1's where the string is found and 0's where it isn't, whether due to it being a string without "EXPERIMENT" or not a string at all.
Voir également
Catégories
En savoir plus sur Characters and Strings dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!