Сортировка строк в MATLAB подобно тому, как Windows 7 сортирует имена файлов в проводнике (по цифрам в середине-строки)

Каков наилучший способ сортировки строк в MATLAB, учитывая числовые значения, которые могут присутствовать в середине-строки?

Следующий пример иллюстрирует мою проблему. 401 — это численное большее значение, чем 6. Поэтому строка Ie401sp2 должна быть указана после строки Ie6 при сортировке в порядке возрастания. В этом примере обратите внимание, как сортируются следующие строки, содержащие цифры.

---Matlab---(Не сортирует так, как я хочу)
Ie4_01
То есть4_128
Ие401сп2
То есть5
Ие501сп2
Ie6

---Windows 7---(Как я хочу, чтобы MATLAB сортировал)
Ie4 _01
То есть4_128
То есть5
То есть6
Ие401сп2
Ie501sp2

Windows 7 учитывает относительные значения цифр, которые появляются в середине-строки. Как лучше всего это сделать в Matlab? Я стараюсь не сходить с ума по касательной, чтобы заново изобретать велосипед.

6
задан Shaun 28 March 2012 в 06:26
поделиться