Check if cell contains specific letter

I'm wondering if it is possible to check if a string contains a certain letter.
I have an array with different strings and I would like to find every cell that contains a certain letter.
'hi'
'my'
'name'
'is'
How would I find the cells containing the letter i?

Réponses (1)

Guillaume
Guillaume le 27 Jan 2016
Many ways to do this:
c = {'hi'; 'my'; 'name'; 'is'}
lettertofind = 'i';
%method 1: plain character comparison
cellfun(@(s) any(s == lettertofind), c)
%method 2: strfind
cellfun(@(s) ~isempty(strfind(s, lettertofind)), c)
%method 3: ismember
cellfun(@(s) ismember(lettertofind, s), c)
%etc.

1 commentaire

% regexp
~cellfun(@isempty,regexp(c,'i'))
% strcmp
~strcmp(strrep(c,'i','x'),c)

Connectez-vous pour commenter.

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Tags

Commenté :

le 27 Jan 2016

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by