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
"LOWERCASE-a"
OR=> "Small-A"
OR=> "LA01"
OR=>
char-name #\A)
(=> NIL
"UPPERCASE-A"
OR=> "Capital-A"
OR=> "LA02"
OR=>
;; 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. 文字の印字を参照。