목록에 값이 있으면 elisp에서 어떻게 확인합니까? 그래서 다음은 t을 반환 :Elisp 목록에 값이 들어 있습니다.
(contains 3 '(1 2 3))
하지만
(contains 5 '(1 2 3))
이 전무를 반환합니다.
목록에 값이 있으면 elisp에서 어떻게 확인합니까? 그래서 다음은 t을 반환 :Elisp 목록에 값이 들어 있습니다.
(contains 3 '(1 2 3))
하지만
(contains 5 '(1 2 3))
이 전무를 반환합니다.
당신이 필요로하는 기능은 예를 들어 member
입니다 :
(member 3 '(1 2 3))
그것은 그의 차 요소입니다 목록의 꼬리를 반환합니다. 이것은 정확히 t
이 아니지만, any non-nil value is equivalent to true for a boolean operation입니다. 또한 동일성 여부를 테스트하려면 member
uses equal
을 사용하고 eq
을 사용하여 memq
을 사용하여보다 엄격한 동일성을 확인하십시오.
freiksenet's answer은 훌륭하고 관용적입니다. 자세한 내용은
(-contains? '(1 2 3) 2) ; t
http://www.gnu.org/software/를 참조하십시오 : 당신이
dash.el
를 사용하는 경우 일부 목록은 요소가있는 경우에, 당신은 또한 정확히 같은-검사를 수행 기능-contains?
를 호출 할 수 있습니다 emacs/emacs-lisp-intro/html_node/List-Processing.html –