Есть метод [NSArray indexOfObjectPassingTest].Но он использует блоки, расширение Apple для C, и, следовательно, является злом.Вместо этого сделайте это:
NSArray *a; //Comes from somewhere...
int i;
for(i=0;i<a.count;i++)
if([[[a objectAtIndex:i] objectForKey: @"Name"] compare: @"Roger"] == 0)
return i; //That's the index you're looking for
return -1; //Not found