Check if cell contains specific letter

33 views (last 30 days)
jakob ekwall
jakob ekwall on 27 Jan 2016
Commented: Stephen23 on 27 Jan 2016
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?

Answers (1)

Guillaume
Guillaume on 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 Comment
Stephen23
Stephen23 on 27 Jan 2016
% regexp
~cellfun(@isempty,regexp(c,'i'))
% strcmp
~strcmp(strrep(c,'i','x'),c)

Sign in to comment.

Categories

Find more on Characters and Strings in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!