文字データ


文字の値

Common Lisp はシステムが使う文字コードを定義してませんが、多くのシステムは英数字を ASCII コードで表現しているでしょう。 1 文字 (character)を表現するには次のように指定します。

#\文字

ここで指定できる文字は常に 1 文字であり、複数の文字を列挙する文字列ではありません。 ただし、視覚的な文字として表現できない空白文字や改行文字などは、次のような特殊文字として表現されます。

文字展開文字
#\Space空白スペース
#\Tabタブ
#\Rubout消去
#\Return復帰
#\LineFeed改行
#\Page改ページ

文字データは数値による文字コードで表現されているため、必要に応じて文字をコードに変換したり、数値コードを文字に変換することがあります。 文字を数値に変換するには char-code 関数を使い、数値を文字に変換するには code-char 関数を使います。

char-code char

code-char code &optional (bits 0) (font 0)

char-code 関数の引数 char には、数値コードに変換したい文字を指定します。 逆に code-char 関数の code には、文字に変換したい数値を指定します。 それ以降は、文字コートの属性を指定するオプション引数で、省略することができます。

> (char-code #\A)
65
> (code-char 66)
#\B
> (char-code #\Space)
32
> (char-code #\Tab)
9

このコマンドでは、文字 "A" をコードに変換し、それが 65 であることを確認してます。 同様に、数値 66 を文字に変換すると "B" であることがわかります。



前のページへ戻る次のページへ