是否可以使用 core.match 执行以下操作(愚蠢的示例):
(defn summaries-film [film]
(match film
{:genre "Horror" :budget :guard #(< % 1000000) :star _} "Low budget horror"
{:genre "Comedy" :budget _ :star "Adam Sandler"} "Trash"
{:genre _ :budget _ :star "Emily Blunt"} "5 Stars"
:else "Some other film"))
??
我希望能够在地图上进行模式匹配,但是有:guard #(< % 10000)
一点吗?即根据地图中键的值在模式中有一个功能吗?
这可能吗,我知道我可以在向量上执行此操作,但无法计算出语法或者是否可以使用地图。
我知道我可以使用解构,但我想知道是否可以使用模式匹配。
谢谢