| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: Общие вопросы > как отсортировать такой ряд? |
| Автор: zyxerr 23.7.2008, 21:24 | ||
| вопрос модератору - у меня много разнотипных вопросов, мне лучше сразу их запостить в одной ветке или создавать новую для каждого вопроса? . суть дела: мне нужно отсортировать файлы в таком порядке: . 10000000_1.gif 10000001_1.gif 10000001_2.gif 10000002_01.gif 10000002_02.gif 10000002_03.gif 10000002_04.gif 10000002_05.gif 10000002_06.gif 10000002_07.gif 10000002_08.gif 10000002_09.gif 10000002_10.gif 10000003_1.gif 10000004_1.gif . где 10000000 - это номер документа, _1 - номер страницы. Если страниц больше 10, то номера начинаются с нуля, если больше 100 - с двух нулей (_001, _002) . если применить обычную числовую сортировку ($a<=>$b), то получается такой порядок: _58, _59, _6, _60, _61, то есть _6 стоит не после _5, а после _59 . я нашел пример в мануале, где разбиралась сложная сортировка и методом тыка написал вот такую функцию
и она работает! но я так и не понял - зачем в ней такая [0] штука? если удалить, то не работает.. |
| Автор: zyxerr 24.7.2008, 18:50 |
| спасибо! все таки Perl - удивительная штука |