I have an array of numbers and strings. like
NSArray* list = @[@"9", @"21", @"A 2-5", @"19-1", @"10", @"D 7-10", @"13-2"];
I want this array sorted as
@[@"9", @"10", @"21", @"13-2", @"19-1", @"A 2-5", @"D 7-10"];
But if I use
[list sortedArrayUsingComparator:^NSComparisonResult(NSString *obj1, NSString *obj2) {
return [obj1 compare:obj2];
}];
I get
@[@"10", @"13-2", @"19-1", @"21", @"9", @"A 2-5", @"D 7-10"];
I get similar result too if I use
[list sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];
How can I achieve the result as I expected?