How to use exist for a cell?

42 次查看(过去 30 天)
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!

采纳的回答

Walter Roberson
Walter Roberson 2012-4-12
if exist(A{i,1},'var')
Notice the {} instead of ()
  3 个评论
Shamir Alavi
Shamir Alavi 2012-12-7
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 2012-12-7
编辑:Matt J 2012-12-7
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.

请先登录,再进行评论。

更多回答(1 个)

RNTL
RNTL 2012-4-12
ismember(A,who)
  2 个评论
osminbas
osminbas 2012-4-12
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 2012-12-7
@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.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Whos 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by