我必须编写一个程序,通过搜索给定的子字符串来搜索列表中的所有“单词”例如:(monday thursday friday)
搜索“ida”=星期五。
像这样的:
(nth iday '(monday hello sup friday))
但它一直在标记错误。
最佳答案
你的表情毫无意义nth
用于按索引访问元素。
您可以使用remove-if-not
从列表中仅获取匹配的字符串:
(defun find-matching-substr (substr-sym list-of-symbols)
(remove-if-not (lambda (sym)
(search (string substr-sym)
(string sym)))
list-of-symbols))
CL-USER> (find-matching-substr 'day '(monday hello sup friday))
(MONDAY FRIDAY)
关于search - 依部分搜寻字词,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26065690/