Detecting a particular word in a cell vector

1 view (last 30 days)
Dear all,
I have a matrix whose first column is :
'MAR'
' POPSIZE'
'OTHTOTAL'
' CONIZE'
' POPIZE'
'MAR'
' POPULAR SIZE'
'OTHOTAL'
' CONSIIZE'
' POPUZE'
'MAR'
'PRODGORY'
I want to detect if the above column contains the string element ‘MAR’
thanks

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 9 Jul 2012
Edited: Andrei Bobrov on 9 Jul 2012
eg
A = {'MAR'
' POPSIZE'
'OTHTOTAL'
' CONIZE'
' POPIZE'
'MAR'
' POPULAR SIZE'
'OTHOTAL'
' CONSIIZE'
' POPUZE'
'MAR'
'PRODGORY'}
out = any(ismember(A,'MAR'));
or
out = any(strcmp(A,'MAR'));

More Answers (2)

Luffy
Luffy on 9 Jul 2012
Edited: Luffy on 9 Jul 2012
see if any(strcmp(M,'MAR')) works for you, if there is MAR it shows 1 else 0
Example: If M = {'MAR'
'POPSIZE'
'OTHTOTAL'
' CONIZE'
' POPIZE'
'MAR'
' POPULAR SIZE'
'OTHOTAL'
' CONSIIZE'
' POPUZE'
'MAR'
'PRODGORY'}
use strcmp(M,'MAR')

Albert Yam
Albert Yam on 9 Jul 2012
I would use a regexp. http://www.mathworks.com/help/techdoc/ref/regexp.html Perhaps with a 'match' option, depending what you want as an output.
test = { 'MAR'
' POPSIZE'
'OTHTOTAL'
' CONIZE'
' POPIZE'
'MAR'
' POPULAR SIZE'
'OTHOTAL'
' CONSIIZE'
' POPUZE'
'MAR'
'PRODGORY'};
regexp(test,'MAR')

Categories

Find more on Cell Arrays 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!