How to use exist for a cell?

48 views (last 30 days)
osminbas
osminbas on 12 Apr 2012
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

Walter Roberson
Walter Roberson on 12 Apr 2012
if exist(A{i,1},'var')
Notice the {} instead of ()
  3 Comments
Shamir Alavi
Shamir Alavi on 7 Dec 2012
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)

RNTL
RNTL on 12 Apr 2012
ismember(A,who)
  2 Comments
osminbas
osminbas on 12 Apr 2012
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.
Jan
Jan on 7 Dec 2012
@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 Entering Commands 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!