我想用地图中的文本替换地图矢量中的某些字符。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