Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
Имеется глобаль следующего вида: ^test(1)="A" ^test(1.1)="Б" ^test(1.2)="В" ^test(1.12)="Г" ^test(2)="Д" ^test(2.1)="Е" ^test(2.15)="Ж" ^test("1.10")="З" ^test("2.10")="И" Как бы поизящнее отсортировать это, чтобы на выходе было: ^t2(1)="1~А" ^t2(2)="1.1~Б" ^t2(3)="1.2~В" ^t2(4)="1.10~З" ^t2(5)="1.12~Г" ^t2(6)="2~Д" ^t2(7)="2.1~Е" ^t2(8)="2.10~И" ^t2(9)="2.15~Ж" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2006, 11:26 |
|
||
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
s gl=$na(^resr) s ind="" s newind=0 f s ind=$o(@gl@(ind)) q:ind="" d .s newind=newind+1 .s ^t2(newind)=ind_"~"_$g(@gl@(ind)) q ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2006, 12:58 |
|
||
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
s gl=$na(^resr) заменить на s gl=$na(^test) тороплюсь..-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2006, 13:01 |
|
||
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
AlexanderYes gl=$na(^resr) s ind="" s newind=0 f s ind=$o(@gl@(ind)) q:ind="" d .s newind=newind+1 .s ^t2(newind)=ind_"~"_$g(@gl@(ind)) q а попроще никак нельзя? например: s ind="" f i=1:1 s ind=$o(^test(ind)) q:ind="" s ^t2(i)=ind_"~"_^(ind) это, конечно, с учетом цифровой сортировки. в случае строковой - надо подумать. С уважением. Сергей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2006, 13:57 |
|
||
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
Sergei Obrastsov[quot AlexanderYe]s gl=$na(^resr) s ind="" f i=1:1 s ind=$o(^test(ind)) q:ind="" s ^t2(i)=ind_"~"_^(ind) это, конечно, с учетом цифровой сортировки. в случае строковой - надо подумать. С уважением. Сергей :) Сергей, в этом и смысл получить как было в моем примере. т.е. за 1.1 должно идти 1.10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2006, 14:07 |
|
||
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
AlexanderYes gl=$na(^resr) заменить на s gl=$na(^test) тороплюсь..-( В Вашем примере получается в новой созданной глобали сортировка та же, что и первой, а смысл как раз был, чтобы строковые индексы встали куда следует, а не в конец глобали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2006, 14:25 |
|
||
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2006, 14:49 |
|
||
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
превращаю все индексы в строки s gl=$na(^test) k ^t3 s ind="" f s ind=$o(@gl@(ind)) q:ind="" d .s ^t3(ind_".0")=ind_"~"_$g(@gl@(ind)) q значения узлов отсортированы остатеся только поменять индексы на 1,2,3... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2006, 15:20 |
|
||
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
ну я Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Как раз и не опечатка. Для наглядности представьте, что это номера разделов в документе. Т.е. именно так и нужно отсортировать: 1 1.1 1.2 1.10 1.12 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2006, 08:39 |
|
||
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
М_а_й_кКак раз и не опечатка. Для наглядности представьте, что это номера разделов в документе. Т.е. именно так и нужно отсортировать: 1 1.1 1.2 1.10 1.12 Тогда так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ^t2(2)="1.1~Б" ^t2(3)="1.2~В" ^t2(4)="1.10~З" ^t2(5)="1.12~Г" ^t2(6)="2~Д" ^t2(7)="2.1~Е" ^t2(8)="2.10~И" ^t2(9)="2.15~Ж" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2006, 10:35 |
|
||
|
Сортировка (при различном типе индексов)
|
|||
|---|---|---|---|
|
#18+
Есть еще вариант через приведение к строковой сортировке и учитывание что могут быть не одна точка. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2006, 15:08 |
|
||
|
|

start [/forum/topic.php?fid=39&gotonew=1&tid=1559571]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
9ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 351ms |

| 0 / 0 |
