为什么我不能在“ |”处分开 在clojure

艾玛

我试图分裂一个字符串的ClojureHello|World”但是,当使用分割法“ (clojure.string/split x #"|")”我得到一个奇怪的结果,我得到这个"[h e l l o | w o r l d]"谁能告诉我为什么这样做,以及如何将其拆分以得到[hello world]

艾伦·汤普森

答案是:

(str/split "Hello|World" #"|")  => ["H" "e" "l" "l" "o" "|" "W" "o" "r" "l" "d"]
(str/split "Hello World" #" ")  => ["Hello" "World"]
(str/split "Hello|World" #"\|") => ["Hello" "World"]

在正则表达式中,|字符是特殊字符,需要用反斜杠转义\

|字符是正则表达式中的逻辑运算符,通常用于表示“或”,例如“ abc | def”:

(str/split "Hello|World" #"e|o") => ["H" "ll" "|W" "rld"]

由于您没有其他内容,因此似乎已被解释为“任何内容或任何内容”,因此它与每个字符之间的边界匹配。

有关更多信息,请参见Java文档

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么我不能在emacs中的Clojure Cider REPL中从后台线程打印?

为什么我不能制作分开的表副本?

在Clojure中,为什么“某些”功能不能在集合上始终如一地工作?

为什么我的 clojure REPL 输出乱码?

如果我分开.js文件,为什么不能输入任何字母?

为什么我的按钮不能设置50%的宽度并在每一侧分开?

为什么我的python re模式无法在空格处分割?

java.lang.Long 不能转换为 clojure.lang.IFn 我不明白为什么我收到这个

为什么 Cursive 不能识别 Clojure 代码中的 Java 方法?

为什么我的div背景与标题分开?

为什么 .format() 不能与声明分开使用?

为什么我不能再将来自两台不同计算机的Firefox实例分开?

为什么我不能在 Flatlist 中显示我的项目?

为什么我不能在 init 中获得我的 fetchedResults?

为什么我不能在我的代码中使用“ balance ”?

为什么我不能在 Pycharm 上运行我的文件?

为什么我们需要Clojure中的'in(require'[...]])?

为什么我可以设置!内置动态(?)Clojure vars?

为什么在Clojure中将map映射为`into`映射(`(into {} ,,,)`),而不能使用`vectors`,而不能使用`list`?

Clojure Multimethods将地图与地图列表区分开

为什么我不能在异步方法中调试代码?

为什么我不能在 chartjs 图表中更新宽高比?

为什么我不能在桌子上继承父母的宽度?

为什么我不能在 html 中全屏显示图像?

为什么我不能在 css 中对图像进行过渡?

ElasticSearch:为什么我不能在特定类型中搜索?

为什么我不能在IF语句中嵌套SUBSTITUTE?

为什么我不能在 Session 中保存对象

为什么我的测试不能在MySQL上运行?