1
我有以下的测试为例,可以使用read
,但遇到一些问题:如何阅读?
#lang racket
(struct test (num) #:prefab)
(define s3 (read (open-input-string "((AK= #s(test .)) (AV))")))
(match s3
[`((AK= ,(struct test (val))) (AV)) (displayln val)])
它会发出read: unexpected
)'`
我知道那是因为.
的,但我的来源将包含很多这样的事情,那么问题是我如何在球拍中阅读它们?
在此先感谢...
谢谢!现在我想我需要扩展阅读表,以及以前无法阅读的所有内容...... – monica
@monica:请记住,如果您有一些距离Racket语法足够的数据,那么你可以使用一些更简单的基于正则表达式的东西,或者,另一方面,你可以构建一个完整的解析器。 –
我遇到了如何正确读取球拍中的'('或')'的问题...然后感谢您的建议,我放弃了可读取的扩展方法。相反,我从所有程序的不同运行中获取所有实例,并执行我之前所需的操作,而不是使用序列化/反序列化方法。 – monica