例如:
(regexp-match #rx"a|b" "cat")
我想绑定一个变量,"a|b"
以便我可以动态创建模式。
您可以根据需要动态构建模式(请参阅文档),如下所示:
(regexp "a|b")
> #rx"a|b"
请注意,模式只是一个字符串,该regexp
过程负责将其转换为正则表达式对象。该#rx""
符号只是正则表达式的文字表示,您可以通过使用该regexp
过程来实现相同的效果。之后,正则表达式可以绑定到一个变量:
(let ((regexp (regexp "a|b")))
(regexp-match regexp "cat"))
或用作过程参数:
(define (matcher regexp)
(regexp-match regexp "cat"))
(matcher (regexp "a|b"))
或者你喜欢的任何其他方式。