我想用地圖中的文本替換地圖矢量中的某些字符。Clojure字符串替換爲帶有文本的地圖矢量
這應該是一個更大的程序的一部分,它包含文本列表中的所有單詞。
輸入向量是這樣的:
[{:text "bla. Bla! Blabla, foo"}
{:text "hello foo? bla Foo, blabla"}
{:text "bla blub Foo Bla blub"}]
輸出應該是這樣的,並且應在價值排序:
{:bla 3 :Bla 2 :blub 2 :foo 2 :Foo 2 ... }
但首先我想太乾淨一些字符串字符。
我地圖嘗試過,但我不明白爲什麼這個代碼不工作的權利:
(defn clean-texts []
(map (fn [x] (clojure.string/replace x #"[.,]" "")) (:text texts)))
整個代碼如下所示:
(ns keyword-finder.core
(:gen-class))
(def texts
[{:text "bla. Bla! Blabla, foo"}
{:text "hello foo? bla Foo, blabla"}
{:text "bla blub Foo Bla blub"}])
(defn clean-texts []
(map (fn [x] (clojure.string/replace x #"[.,]" "")) (:text texts))
)
當構成約問題如果代碼不起作用,那麼如果你花時間描述你期望發生的事情,並且發生了什麼,那麼它將非常有幫助。 – Pointy 2014-10-12 13:59:10
對不起我現在編輯 – Kingalione 2014-10-12 14:11:32
你運行'clean-texts'得到了什麼結果?爲什麼它們不正確? – soulcheck 2014-10-12 14:20:52