我有一个具有以下结构的数组:
{
{ 'attr1', { 'val1', 'val2', 'valn'} },
{ 'attr2', { 'val4' } },
{ 'attr3', { 'val5', 'val6', 'valn'} }
}
如何检查attr2
元素的索引,例如?
我发现some questions关于在数组中查找元素,但它们是统一数组,而不是像我的情况那样的混合数组。
答案 0 :(得分:1)
你可以使用 strfind 。但由于给定的对象是嵌套单元格,因此会产生位问题。以下方法怎么样?
str = {
{ 'attr1', { 'val1', 'val2', 'valn'} },
{ 'attr2', { 'val4' } },
{ 'attr3', { 'val5', 'val6', 'valn'} }
} ;
str1 = [str{:}] ;
attrs = str1(1:2:end) ; % pick the attributes alone
idx = strfind(attrs, 'attr2');
idx = find(not(cellfun('isempty', idx)));
iwant = str{2}