如何在嵌套列表/向量clojure中提取数据

时间:2015-03-24 13:43:57

标签: clojure

我解析了xml并获得了以下结果

(({:tag :Column,
   :attrs {:Name "VENDOR_KEY", :Type "Int", :NotNull "Yes"},
   :content nil}
  {:tag :Column,
   :attrs {:Name "RETAILER_KEY", :Type "Int", :NotNull "Yes"},
   :content nil}
  {:tag :Column,
   :attrs {:Name "ITEM_KEY", :Type "Int", :NotNull "Yes"},
   :content nil})
 ({:tag :Column,
   :attrs {:Name "Store_Key", :Type "Int", :NotNull "Yes"},
   :content nil}))

然后如何将其转换为以下内容,基本上我想在嵌套列表中提取key:attrs的值。

    (
    ({:Name "VENDOR_KEY", :Type "Int", :NotNull "Yes"},
     {:Name "RETAILER_KEY", :Type "Int", :NotNull "Yes"},
     {:Name "ITEM_KEY", :Type "Int", :NotNull "Yes"}),
    ({:Name "Store_Key", :Type "Int", :NotNull "Yes"})
    )

1 个答案:

答案 0 :(得分:2)

所以,这就是你的解决方案  hsestupin

(map #(map :attrs %) result)

我假设结果是您的输入数据。