如何将字符串列表转换为球拍中的字符串?(保持空格完整)

Tos*_*iro 2 scheme list racket

如何在DrRacket中将字符串列表转换为字符串?例如,如果我 '("44" "444")将其转换为"44 444"

我尝试了string-join,但它需要一个分隔符,如果我放一个它用分隔符替换空格,如果我使用""分隔符,它只是摆脱它.

Ósc*_*pez 7

实际上使用在这种情况下,简单地使用正确的程序(一个空格)作为分隔符:string-join " "

(string-join '("44" "444") " ")
=> "44 444" 
Run Code Online (Sandbox Code Playgroud)

只是为了澄清:在列表中,元素之间的空格不被视为列表的一部分,它们用于分隔元素.例如,所有这些列表都相同并且评估为相同的值:

'("44""444")
'("44" "444")
'("44"  "444")
Run Code Online (Sandbox Code Playgroud)

如果由于某种原因您想将空格视为列表的一部分,那么您必须将它们显式添加为列表中的元素:

(define lst '("a" " " "b" "  " "c" "   " "d"))
(string-join lst "")
=> "a b  c   d"
Run Code Online (Sandbox Code Playgroud)