文字を数値に変換する


digit-char-pを用いて数値を表わす文字を数値に変換することが可能です。

(digit-char-p #\1)
;=> 1

(map 'list #'digit-char-p "01234567890")
;=> (1 2 3 4 5 6 7 8 9 0)

digit-char-pは基数を設定することにより2〜36進数までの範囲で変換条件を指定可能です。

(map 'list (lambda (x) (digit-char-p x 16)) "123456789abcdef")
;=> (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15)