如何将类似"(+ ( - 5 2) 8)"
的字符串转换为可以在Racket提示符下求值的s表达式(+ (- 5 2) 8)
?我尝试了string->symbol
,但返回了'|(+ ( - 5 2) 8)|
,这不是我想要的。
答案 0 :(得分:4)
球拍(或其他任何Lisp)中的If Not IsError(v) Then
'v is safe to convert to whatever you need it to be
Else
'cell contains an error value
End If
功能就是这样做的。 read
将从输入端口而不是字符串中读取。您可以为此使用read
函数。
open-input-string