条件式を指定したソート - lisp-cookbook-ja/common-lisp GitHub Wiki
配列
条件式を指定したソート
sort は比較の為の関数を取りますので、比較条件を任意に指定することが可能です。
(let ((v (vector "Hitoshi,045" "Sizuo,046" "Yoshi,0138")))
(flet ((getn (x) (1+ (position #\, x))))
(sort v (lambda (x y)
(string< x y :start1 (getn x) :start2 (getn y))))))
;=> #("Yoshi,0138" "Hitoshi,045" "Sizuo,046")