string - 如何评估 Racket 中的弦

标签 string eval racket

我试图了解如何让 eval 函数读取字符串并评估字符串内的内容。

目前我知道

> (eval '(+ 1 2))
   3

但我对 Racket 的使用不是很了解。所以目前我正在尝试获取它以便我可以做到这一点:
> (eval "(+ 1 2)")
   3

任何有用资源的建议或链接将不胜感激。

最佳答案

您要使用 read连同open-input-string .像这样:

-> (eval (read (open-input-string "(+ 1 2)")))
3

您也可以使用 with-input-from-string :
-> (with-input-from-string "(+ 1 2)"
     (lambda () (eval (read))))
3

关于string - 如何评估 Racket 中的弦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10399315/

相关文章:

java - 从存储在 HashMap 中的字符串数组列表生成字符串组合

c - 在 C 中将 strncat 与 char 数组元素一起使用

javascript - 通过单击 LinkBut​​ton 将 BoundField 的值传递给 Javascript 函数

php - eval() 代码中的意外 $end

javascript - eval 的替代方案

racket - 懒惰 Racket 中的动态编程

c - 在C中将字符设置为字符串时出错

java - 将字符串转换为文本 (Java Hadoop)

scheme - 在 Racket 中如何匹配?

scheme - 这些嵌套向量是如何连接的?