CL에서 문자의 유니 코드 이름을 문자열로 가져올 수 있습니까? 인수로 #\α
을 수신하는 함수는 "GREEK SMALL LETTER ALPHA"
을 반환합니까?Common Lisp : 유니 코드 이름 가져 오기
답변
가 cl-unicode 라이브러리를 사용하여 다음과
CL-USER> (cl-unicode:unicode-name #\α)
"GREEK SMALL LETTER ALPHA"
CL-USER> (cl-unicode:unicode-name 945)
"GREEK SMALL LETTER ALPHA"
저는 이것을 처음 접했고, 이것을 얻기 위해 사용할 수있는 패키지 관리자가 있습니까? 도서관? (sbcl과 슬라임 사용) – Toothrot
예, quicklisp이라고합니다. 다음과 같이 자세한 내용을 설치하십시오. https://www.quicklisp.org/beta/ 그런 다음 (ql : quickload "cl-unicode")를 작성하여 라이브러리 및 그 종속성을 가져 와서로드 할 수 있습니다. 사용 가능한 라이브러리는 http://quickdocs.org/에서 찾아 볼 수 있습니다. 자신의 라이브러리를 만들 때 해당 라이브러리의 종속성을 asd 파일에 나열합니다. 라이브러리를 ~/quicklisp /에 저장 (또는 거기에 심볼릭 링크)하면 종속성을 가진 빠른로드가 가능합니다. –
CHAR-NAME
의 결과는 표준화되지 않지만, 종종 당신은 얻을 것이다 :
? (char-name #\α)
"Greek_Small_Letter_Alpha"
LispWorks에서 :
CL-USER 40 > (char-name #\α)
"U+03B1"
CL-USER 41 > (system::lookup-unicode-character-name #\α)
"GREEK SMALL LETTER ALPHA"
시작 [ 'char-code'와'code-char'] (http://cl-cookbook.sourceforge.net/strings.html#chars)를 참조하십시오. – jthill
['CHAR-NAME']도 참조하십시오. (http://www.lispworks.com/documentation/HyperSpec/Body/f_char_n.htm) – jkiiski