NSArray *myArray = ... ;</p>
<pre><code>[myArray makeObjectsPerformSelector:@selector(stringByDeletingPathExtension)];
EDIT : Как отметили @Wevah в комментариях, это решение не решает проблему, поскольку stringByDeletingPathExtension возвращает строку, а не изменяет объект, для которого вызывается.
NSMutableArray *newArray = [[[NSMutableArray alloc] initWithArray:myArray] autorelease];
for( int i = 0; i < [newArray count]; i++ ) {
NSString* oneItem = [newArray objectAtIndex:i];
[newArray replaceObjectAtIndex:i withObject:[oneItem stringByDeletingPathExtension]];
}
затем используйте ваш новый массив ...