Сортировка 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 или хороший трюк кода для лучшей обработки этой сортировки?

Большое спасибо, -Код

Ответы на вопрос(6)

Ваш ответ на вопрос