Просмотр полной версии : Нужно отсортировать СТРОКУ
MeinTeil
28.10.2006, 11:43
Помогите решить задачу кто может.
например дана строка.
m = "P3P4P5P6P7+P5P3P1+P2P8P6+P3P2P9+P5P6+P6";
нужно отсортировать её, чтоб она стала вида
m = "P6+P5P6+P2P8P6+P3P2P9+P5P3P1+P3P4P5P6P7";
т.е по увелечению элементов.
я пробовал так:
m = "P3P4P5P6P7vP5P3P1vP2P8P6vP3P2P9vP5P6vP6";
m2=m.split("v");
m2.sort(4); //пробовал и другие методы сортировки но ничего не помогает
_sestra_
28.10.2006, 13:05
function sort( a, b ) {
return a.length>b.length;
}
m = "P3P4P5P6P7vP5P3P1vP2P8P6vP3P2P9vP5P6vP6";
arr = m.split( 'v' );
arr.sort( sort );
MeinTeil
28.10.2006, 13:41
function sort( a, b ) {
return a.length>b.length;
}
m = "P3P4P5P6P7vP5P3P1vP2P8P6vP3P2P9vP5P6vP6";
arr = m.split( 'v' );
arr.sort( sort );
до меня не доходит, как оно так работает.. объясните :) поидее функция должна вернуть булевое значение. Но мало того что мы не отправляем ей входящих параметров а,b так она помоему возращает функию?) Объясните, очень охота понять как так.
_sestra_
28.10.2006, 13:59
Не силён в терминологии. Это всё заморочки метода Array.sort();
Он сам организовывает передачу параметров а, b ( сравнивает элементы друг с другом ) и упорядочивает их в зависимости от того по какой логике идёт сортировка. :)
MeinTeil
28.10.2006, 14:19
Не силён в терминологии. Это всё заморочки метода Array.sort();
Он сам организовывает передачу параметров а, b ( сравнивает элементы друг с другом ) и упорядочивает их в зависимости от того по какой логике идёт сортировка. :)
респект, главное чего хотел добился, спасиб :)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.