首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Parenscript中使用regex (正则表达式)

在Parenscript中使用regex (正则表达式)
EN

Stack Overflow用户
提问于 2020-05-27 19:29:26
回答 1查看 135关注 0票数 0

我正在试用Parenscript。在尝试使用regex函数时,我得到了意外的输出。例如,reference manual显示:

代码语言:javascript
复制
(regex "foobar")
    /foobar/;

(regex "/foobar/i")
    /foobar/i; 

然而,在我repl中,我得到了错误的函数(parenscript:regex..)未定义。

代码语言:javascript
复制
The function parenscript:regex is undefined.
   [Condition of type undefined-function]

Restarts:
 0: [continue] Retry using regex.
 1: [use-value] Use specified function
 2: [retry] Retry SLIME REPL evaluation request.
 3: [*abort] Return to SLIME's top level.
 4: [abort] abort thread (#<thread "repl-thread" running {1002319B63}>)

Backtrace:
  0: (sb-impl::retry-%coerce-name-to-fun regex nil)
  1: (sb-int:simple-eval-in-lexenv (regex "foobar") #<NULL-LEXENV>)
  2: (eval (regex "foobar"))
 --more--

我尝试将名称空间更改为cl-user、ps等,但都不起作用。OTOH,只是为了检查,我试着使用了sin,random等函数,它起作用了。我的意思是,在repl中输入(sin 0.1)会产生预期的输出。

任何帮助都会有很大的帮助。

EN

回答 1

Stack Overflow用户

发布于 2020-05-27 19:56:48

在SBCL读取-求值-打印-循环中:

代码语言:javascript
复制
CL-USER> (in-package "PS")
#<PACKAGE "PARENSCRIPT">

PS> (ps (regex "foobar"))
"/foobar/;"

PS> (in-package "CL-USER")
#<package "COMMON-LISP-USER">

cl-user> (ps:ps (ps:regex "foobar"))
"/foobar/;"

PS:PS是作为宏运算符的Parenscript编译器。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62042025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档