例如在地图上:
{"test-1" 23,
"test-2" 456,
"test-3" 23}如何查找具有值23的键
发布于 2018-01-04 23:27:07
如果你想用Specter找到一些东西,最好使用specter/select.
(use 'com.rpl.specter)
(select [ALL #(= (second %) 23) FIRST]
{"test-1" 23,
"test-2" 456,
"test-3" 23})发布于 2017-09-01 10:25:00
我想你不需要幽灵来做这件事,只要按价值过滤就行了。即:
(->> {:key-1 10
:key-2 20
:key-3 10}
(filter (fn [[k v]] (= v 10)))
(map first))
==> [:key-1 :key-3]Specter的一个解决方案是:
(keys (specter/setval [specter/MAP-VALS #(not= 10 %)]
specter/NONE
{:key-1 10
:key-2 20
:key-3 10}))https://stackoverflow.com/questions/45997554
复制相似问题