npt-japanese

% Function CHAR-NAME

UP


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. 文字の印字を参照。


TOP, Github