How to use exist for a cell?

Hello,
I have a cell with string elements and I am trying to check if they exist as variables:
A={'B0','B01','B04'}
for i=1:3
if exist(A(i,1),'var')==1
...
This does not work so what do I do? Thx!

 Accepted Answer

if exist(A{i,1},'var')
Notice the {} instead of ()

3 Comments

You rock, Walter!
It doesn't work for me! Here's the code:
>> h = {1,2;3,4};
>> exist('h','var')
ans =
1
>> exist('h{1}','var')
ans =
0
>> exist('h{1,1}','var')
ans =
0
Am I making any mistake? If not, is there any other way to check existence of different elements in a cell array?
Thanks
Matt J
Matt J on 7 Dec 2012
Edited: Matt J on 7 Dec 2012
You have several errors. First, notice that Walter doesn't enclose the first argument to exist() in quotes. Secondly, your h{i,j} data are not relevant examples because they are not strings.

Sign in to comment.

More Answers (1)

ismember(A,who)

2 Comments

Actually, I am really trying to use exist and check the elements one by one in a loop so ismember(A,who) would not work for me.
@osminbas: Please take the time to think twice. This method would help to avoid the loop or at least compare all elements of the cell string h in a very compact form.

Sign in to comment.

Categories

Find more on Creating, Deleting, and Querying Graphics Objects 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!