This is the new home of the egghelp.org community forum.
All data has been migrated (including user logins/passwords) to a new phpBB version.
For more information, see this announcement post. Click the X in the top right-corner of this box to dismiss this message.
Help for those learning Tcl or writing their own scripts.
-
FallFromGrace
- Voice
- Posts: 17
- Joined: Mon Jul 28, 2008 8:52 am
Post
by FallFromGrace »
i have a list with such elements:
{kelly 15 1}
{john 50 4}
{jack 80 2}
{bill 70 3}
{ann 30 2}
{james 100 1}
so i need to sort it, to get:
{john 50 4}
{bill 70 3}
{jack 80 2}
{ann 30 2}
{james 100 1}
{kelly 15 1}
with first sort by 3th value and second sort by 2th value..
maximum that i can get is a list sorted by 2th or 3th value... [lsort -index 1 or 2 -decreasing $list]
how to sort it again?
-
nml375
- Revered One
- Posts: 2860
- Joined: Fri Aug 04, 2006 2:09 pm
Post
by nml375 »
lsort uses a merge-sort, and depending on the merge-algorithm, you
might be able to get away with something like this:
Code: Select all
set newlist [lsort -index 2 -decreasing [lsort -index 1 -decreasing $list]]
NML_375