Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Clojure 从集合中删除字符串实例_Clojure - Fatal编程技术网

Clojure 从集合中删除字符串实例

Clojure 从集合中删除字符串实例,clojure,Clojure,我有这个收藏 ("string" {:1 a} "string" {:2 b} "string") 我只想返回映射元素 因此, ({:1 a} {:2 b}) 可能使用过滤器 (filter map? coll) 输出: ({:1 3} {:2 4}) 如果要删除列表中的字符串,请使用remove和sting?谓词。这很简单 user=> (remove string? '("string" {:1 a} "string" {:2 b} "string")) ({:1 a} {:2

我有这个收藏

("string" {:1 a} "string" {:2 b} "string")
我只想返回映射元素

因此,

({:1 a} {:2 b})
可能使用过滤器

(filter map? coll)
输出:

({:1 3} {:2 4})

如果要删除列表中的字符串,请使用
remove
sting?
谓词。这很简单

user=> (remove string? '("string" {:1 a} "string" {:2 b} "string"))
({:1 a} {:2 b})

如果您的意图是删除map以外的元素,那么最好使用
filter
map?
谓词,如@Reut的回答中所示。

在这种情况下,您可以使用
(filter-map?coll)
。@jmargolisvt这样更好。对clojure来说很显然是新的:)哦!简单的回答-我对clojure也是新手:)看看这些答案,你的问题似乎需要澄清。是否要删除字符串或返回任何非映射的内容?为澄清而编辑的问题“删除字符串”与“删除除映射以外的元素”-现在如何澄清?我用+1替换了它,因为它提供了问题空间的解决方案。