提取单元格数组中某个字符的索引

时间:2013-03-26 15:12:07

标签: matlab if-statement cells

我有一个像这样的单元格数组:
enter image description here

我想在这个单元格数组中提取2的索引,所以我使用了这些代码行:

for i = 1:size(idx,1)  
    if idx{i,1} ~= []  
       index = i;  
    end  
end  

但是代码不起作用。我的意思是如果因为它不理解2与[]的不同而导致debuger永远不会进入。你怎么建议我写代码?
请注意,该字符不会始终为2,也可能出现在其他索引中。

2 个答案:

答案 0 :(得分:3)

要测试变量是否为空,请使用ISEMPTY函数。

要对单元格数组中的所有元素执行此操作,您可以使用CELLFUN

index = find(~cellfun(@isempty, idx));

答案 1 :(得分:2)

在Matlab中,[]表示空,因此:

for i = 1:size(idx,1)  
   if ~isempty(idx{i,1})
      index = i;  
   end  
end