2012-11-07 38 views

回答

6

您可以動態地根據自己的需要(見documentation)建立的模式,就像這樣:

(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")) 

或其他任何方式你喜歡。

相關問題