标签: directory common-lisp alphabetical clisp alphabetical-sort
使用目录功能检索以.pas结尾的文件的所有路径,该文件以我的子文件夹“ testfiles”结尾。到目前为止,一切都很好。问题在于路径不是按字母顺序排列的。
列表中的路径不是字符串或列表,因此sort函数对我也不起作用。
有解决此问题的简便方法吗?
代码:
(setq test (directory "testfiles/*.pas"))
答案 0 :(得分:2)
Common Lisp中的序列函数功能强大,可以通过各种关键字参数(:key,:test等,取决于函数)来实现。 SORT使用可选的:key参数。
(sort (directory "testfiles/*.pas") #'string< :key #'pathname-name)
注意:SORT是一种破坏性操作。但这在这里不是问题,因为DIRECTORY总是返回一个全新的列表。