Clojure正则表达式文字的规范

时间:2017-04-13 15:20:22

标签: clojure clojurescript clojure.spec

我的地图中的一个键应该包含一个Clojure(脚本)正则表达式,regex literal。如何编写既匹配又可以生成的规范?

请注意,这个问题不是要匹配正则表达式表示的字符串,而是匹配正则表达式本身。

1 个答案:

答案 0 :(得分:1)

JVM上的Clojure正则表达式文字是java.util.regex.Pattern的实例,并且可以在下面看到匹配和生成正则表达式的规范。

(spec/def ::stregex
  (spec/with-gen
    #(instance? java.util.regex.Pattern %)
    #(gen/fmap re-pattern (spec/gen string?))))