Page 1 of 1

truncate from the end of list/string

Posted: Fri Nov 25, 2005 8:41 am
by Dmi
Can't find a simple way for truncating from the end of the list.
In general:

(set 's "abcdefg")
(2 s) => "cdefg"
(-2 s) => "fg"

But, if I want to truncate a number of symbols from the end:

(truncate-2-symbols s) => "abcde"

then I must count the string's length before.
The same situation is for the list's contents...
Is there a simple solution?

Posted: Fri Nov 25, 2005 10:40 am
by newdep
do you mean this perhpas?

(reverse ( 2 (reverse "hello")))
>"hel"

Posted: Fri Nov 25, 2005 10:54 am
by Dmi
Something like that :-)
Thanx.

Posted: Fri Nov 25, 2005 1:14 pm
by Lutz
and there is also 'chop' with the number of chars/elements to chop:

(chop "abcdefg" 2) => "abcde"

(chop '(a b c d e f g) 2) => (a b c d e)

Lutz

Posted: Fri Nov 25, 2005 9:09 pm
by Dmi
Thanks, Lutz!