Hello All,
When the string function is applied to a list, it returns a literal list. See code below.
(string '("a" "b" "c"))
This returns: ("a" "b" "c")
I expected it to return: "abc"
Is this working as intended? If so, is there another function that will return a string without the parens and quotes?
Thanks,
-S
string function returns literal list
-
- Posts: 13
- Joined: Tue Nov 06, 2012 4:02 pm
- Contact:
Re: string function returns literal list
It is intended. See http://www.newlisp.org/downloads/newlis ... tml#string
I suggest using apply as follows:Translates into a string anything that results from evaluating exp-1—. If more than one expression is specified, the resulting strings are concatenated.
Code: Select all
(string 'hello) → "hello" (string 1234) → "1234" (string '(+ 3 4)) → "(+ 3 4)" (string (+ 3 4) 8) → "78" (string 'hello " " 123) → "hello 123"
Code: Select all
> (apply string '("a" "b" "c"))
"abc"
Re: string function returns literal list
Hi,
Works perfectly. Thanks.
-S
Works perfectly. Thanks.
-S
Re: string function returns literal list
Hi,
http://www.newlisp.org/downloads/newlis ... .html#join
http://www.newlisp.org/downloads/newlis ... .html#join
Code: Select all
> (set 'MYLIST '("a" "b" "c"))
("a" "b" "c")
> (join MYLIST)
"abc"
> (join MYLIST "-")
"a-b-c"
> (join MYLIST (string "-" (join MYLIST) "-"))
"a-abc-b-abc-c"