gpt4 book ai didi

clojure - 如何在clojure中而不是以正则表达式模式拆分字符串

转载 作者:行者123 更新时间:2023-12-02 14:14:23 24 4
gpt4 key购买 nike

clojure和java中的分割都以正则表达式作为分割的参数。但我只想使用普通的字符来分割。传入的字符可以是“|”、“、”、“”等。如何用该字符分割行?

我需要一些像(分割字符串a-char)这样的函数。而且该函数的调用频率非常高,因此需要良好的性能。有什么好的解决办法。

最佳答案

java.util.regex.Pattern 类中有一些功能支持将字符串视为文字正则表达式。这对于诸如此类的情况很有用。 @cgrand 已经在另一个答案的评论中提到了 (Pattern/quote s) 。还有一个这样的功能是 LITERAL 标志 ( documented here )。它可以在编译文字正则表达式模式时使用。请记住,Clojure 中的 #"foo" 本质上是 (Pattern/compile "foo") 的语法糖。把它们放在一起我们有:

(import 'java.util.regex.Pattern)
(clojure.string/split "foo[]bar" (Pattern/compile "[]" Pattern/LITERAL))
;; ["foo" "bar"]

关于clojure - 如何在clojure中而不是以正则表达式模式拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28342570/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com