我试图分裂一个字符串的Clojure “ Hello|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"]
由于您没有其他内容,因此似乎已被解释为“任何内容或任何内容”,因此它与每个字符之间的边界匹配。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句