Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java';ClojureScript中的s模式/报价等效项_Clojure_Clojurescript - Fatal编程技术网

Java';ClojureScript中的s模式/报价等效项

Java';ClojureScript中的s模式/报价等效项,clojure,clojurescript,Clojure,Clojurescript,在Clojure中,我可以使用(re pattern(java.util.regex.pattern/quote foo))将模式字符串与另一个字符串精确匹配。我怎样才能在ClojureScript中做类似的事情 编辑:我还发现了这个-首先我应该说我既不使用ClojureScript也不使用Javascript,但是快速搜索ClojureScript正则表达式支持将我带到了这个页面:,在“其他函数”部分下,它说:“ClojureScript正则表达式支持是Javascript的支持”,提供了以下

在Clojure中,我可以使用
(re pattern(java.util.regex.pattern/quote foo))
将模式字符串与另一个字符串精确匹配。我怎样才能在ClojureScript中做类似的事情


编辑:我还发现了这个-

首先我应该说我既不使用ClojureScript也不使用Javascript,但是快速搜索ClojureScript正则表达式支持将我带到了这个页面:,在“其他函数”部分下,它说:“ClojureScript正则表达式支持是Javascript的支持”,提供了以下链接:。下一个链接似乎为您提供了您想要的内容(作为一个不使用JavaScript的人,我可以谨慎地肯定地说)

编辑

哦,也许这里这个老问题的答案会给你一个更完整的答案。

没有内置的Clojure或Javascript函数

此clojure函数应转义字符串中的特殊regexp字符:

(defn re-quote [s]
  (let [special (set ".?*+^$[]\\(){}|")
        escfn #(if (special %) (str \\ %) %)]
    (apply str (map escfn s))))


免责声明:我尚未对此进行广泛测试,因此在使用此代码清理潜在的有害字符串之前,您可能希望获得第二个意见。

实际上
模式/quote
\Q
\E
封装表达式。