2013-03-26 63 views
3

我有一个单元阵列这样提取某个字符的索引:
enter image description here在单元阵列

和我想提取的2的指数此单元阵列,所以我使用的码的这些行中:

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

但代码不干活意味着debuger永远不会进入如果东阳它不理解的是2从[]。为什么不同?你如何建议我写代码?
请注意,字符不一定总是2,它也可能出现在其他索引中。

回答

2

在Matlab中,[]表示空的,从而:

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

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

要在单元阵列的所有元素做可以使用CELLFUN

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