文字列を一文字ずつ処理する - lisp-cookbook-ja/common-lisp GitHub Wiki
文字列 シーケンス
文字列を一文字ずつ処理する
単純に一文字ずつ繰返しをするのなら loop を使うのが簡単。
(loop :for char :across "abc"
:do (princ char)
(terpri))
;-> a
b
c
;=> nil
複雑な処理をする場合には (coerce "foo" 'list) でリストに変換したり、 with-input-from-string を使って処理をしてもよい。文字のリストから文字列への変換には (coerce ... 'string) 関数を使う。