Java's Pattern/quote equivalent in ClojureScript
当我在Clojure中时,我可以使用
编辑:我也发现了这一点——在JavaScript ReGEXP中复制Java的"模式引用"功能
没有内置的clojure或javascript函数。
此clojure函数应转义字符串中的特殊regexp字符:
1 2 3 4 | (defn re-quote [s] (let [special (set".?*+^$[]\\(){}|") escfn #(if (special %) (str \\ %) %)] (apply str (map escfn s)))) |
http://ideone.com/qxbbb
免责声明:我没有广泛地测试过这一点,所以在使用此代码清除潜在的邪恶字符串之前,您可能需要获得第二个意见。
首先,我应该说我既不使用clojurescript也不使用javascript,但是快速搜索clojurescript regex支持将我带到了这个页面:https://github.com/clojure/clojurescript/wiki/differences-from-clojure,在"其他功能"部分下,它说:"clojurescript正则表达式支持是javascript的",提供了他的链接:http://www.w3schools.com/jsref/jsref_obj_regexp.asp。下一个链接似乎为您提供了您想要的东西(作为一个不使用JavaScript的人,我谨慎地肯定地说)。
编辑哦,也许这里这个老问题的答案是:将用户输入字符串转换为正则表达式将给您一个更完整的答案。