% Function CHAR-NAME
Function CHAR-NAME
char-name
character => name
character - 文字
name - 文字列かnil
文字の名前を文字列で返却します。
もし文字に名前がないときはnil
です。
全ての非図形文字文字は、
nil
でない何らかの実装定義属性を持たない限り、
名前を持つことが要求されます。
他の文字が名前を持つかどうかは処理系依存です。
標準文字の<Newline>
と<Space>
は、
それぞれ"Newline"
, "Space"
という名前を持っています。
準標準文字の
<Tab>
, <Page>
, <Rubout>
, <Linefeed>
, <Return>
, <Backspace>
は、
(もし処理系がサポートしているのであれば)
それぞれ"Tab"
, "Page"
, "Rubout"
, "Linefeed"
, "Return"
, "Backspace"
という名前を持ちます。
(これらの場合は、#\
による名前の検索や、
関数name-char
の場合あっても、大文字小文字は区別されません。)
(char-name #\ ) => "Space"
(char-name #\Space) => "Space"
(char-name #\Page) => "Page"
(char-name #\a)
=> NIL
OR=> "LOWERCASE-a"
OR=> "Small-A"
OR=> "LA01"
(char-name #\A)
=> NIL
OR=> "UPPERCASE-A"
OR=> "Capital-A"
OR=> "LA02"
;; CHAR-NAMEの返却値が変わっても、#\Aは#\Aとして印刷されます。
(prin1-to-string (read-from-string (format nil "#\\~A" (or (char-name #\A) "A"))))
=> "#\\A"
なし。
もしcharacterが文字ではなかったら、型type-error
のエラーが生じます。
name-char
, 22.1.3.2. 文字の印字
非図形文字が名前を持っている場合は、
Lispプリンターが#\
に続けて名前を出力します。
22.1.3.2. 文字の印字を参照。