문제

텍스트의 정규화 함수 목록을 유지하고 싶습니다. .tolowercase를 어떻게 저장합니까? 나는 다음과 같은 것을 생각하고 있었다 :

(def normalizing-functions (list remove-punctuations .toLowerCase))
도움이 되었습니까?

해결책

정기적으로 무언가에 적용 할 기능 목록을 만드는 것처럼 보입니다. Java 방법은 이런 의미에서는 Clojure 기능이 아니지만 MAP 기능에 공급하는 곳에서와 마찬가지로 마찬가지로 마무리하기가 쉽습니다.

#(. tolowercase %)

다른 팁

나중에 어떤 길을 풀어야 할 목록에 보관하는 대신, 포장하기가 더 쉬울 수 있습니다. .toLowerCase Clojure 함수 (편집 : My 또는 Arthur의 구문 사용)에서,이를 사용하여 데이터를 정상화하는 데 사용할 기능으로 작성하십시오. comp:

user=> (defn remove-punctuation [st] ...removing puncutation mechanics...)

user=> (defn lower-case [st]
         (.toLowerCase st))

user=> ((comp remove-punctuation lower-case) "HELLO THERE!")
"hello there"

user=> (defn normalize-data [data]
         ((comp remove-punctuation lower-case) data))

그만큼 memfn 매크로는 더 읽기 쉬운 방식으로이를 수행 할 것입니다.

(def f (memfn toLowerCase))
(f "Hello")

"안녕하세요"를 반환합니다. (doc memfn) 세부 사항이 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top