我正在尝试使用字符串前缀?但是在模块
中获取错误未绑定标识符(字符串前缀?“球拍”“ R”)
使用dracket
请帮助
答案 0 :(得分:3)
TL; DR:在文件的第二行添加(require racket/string)
,它可能会起作用。
通常,这可以工作:
#lang racket
(string-prefix? "Racket" "R")
但是,string-prefix?
可能不受约束有两种可能性。
您使用的是非标准的Racket语言,但该语言不提供string-prefix?
。一种简单的检查方法是查看程序的第一行,看看是否有#lang <lang-id>
,其中<lang-id>
不是racket
。例如:
#lang racket/base
(string-prefix? "Racket" "R")
在这里,string-prefix?
不受约束,因为racket/base
不提供string-prefix?
。
#lang
,但是左下角将指示您正在使用的语言(例如,初学者)。在两种情况下,如果该语言提供了require
构造,则只需添加(require racket/string)
就可以使string-prefix?
可用。这是因为string-prefix?
是在racket/string
中定义的。
#lang racket/base
(require racket/string)
(string-prefix? "Racket" "R")