oak*_*ld1 8 string escaping common-lisp string-concatenation
如何在连接字符串时转义双引号?比如我希望
(concatenate 'string "Mama said: " "\"Son, your life is an open book...\"")
Run Code Online (Sandbox Code Playgroud)
给:
"Mama said: "Son, your life is an open book...""
Run Code Online (Sandbox Code Playgroud)
而是用反斜杠返回它:
"Mama said: \"Son, your life is an open book...\""
Run Code Online (Sandbox Code Playgroud)
Ram*_*ren 14
返回值可读取,即使用可以使用READ解析为CL对象的表示形式.如果您使用像PRINC这样的函数按字母方式打印字符串,您会看到引号符合您的要求(外部引号不是字符串的一部分):
CL-USER> (princ (concatenate 'string "Mama said: " "\"Son, your life is an open book...\""))
Mama said: "Son, your life is an open book..."
"Mama said: \"Son, your life is an open book...\""
Run Code Online (Sandbox Code Playgroud)
第一行是PRINC的结果,PRINC是READ-EVAL-PRINT-LOOP的PRINT部分的第二行.