Сортировка NSMutableArray строк по строковому значению
Я получаю массив строк со следующими строками, есть определенный образец строк
str1 str51 str3 STR4 str10 str39 str31 str191
Каждая строка начинается с 'str' и имеет номер, добавленный в конце этого.
Есть ли удобный способ сортировки массива, чтобы он перечислял строки в порядке значений
str1 str3 STR4 str10 str31 str39 str51 str191
Я могу увидеть способ сделать это, написав некоторую рекурсивную функцию, которая будет
NSString * firstString = [[strArray objectAtIndex:i].substringFromIndex:3];
NSString * secondString = [[strArray objectAtIndex:i+1].substringFromIndex:3];
if ([firstString intValue] < [secondString intValue])
{
//do nothing they order is correct
}
else
{
//swap the order of the 2 strings in the array
}
Но это очень элементарный код. Есть ли какой-то механизм в Objective-C или хороший трюк кода для лучшей обработки этой сортировки?
Большое спасибо, -Код