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替换了它,因为它提供了问题空间的解决方案。