我有几个字符串:
(def a "some random string")
(def b "this is a text")
现在我想连接它们的一部分来创建一个字符串“一些文本”。不幸的是,下面的两个字符串都不起作用。
(clojure.string/join " " [(take 4 a) (take-last 4 b)])
(str (take 4 a) " " (take-last 4 b))
这是因为函数take
并take-last
返回惰性序列。问题是:连接多个惰性字符串序列并返回一个字符串的正确方法是什么?
编辑:我找到了一种解决方案——(apply str (concat (take 4 a) " " (take-last 4 a)))
但它是最正确的方法吗?