Thursday, January 04, 2007
Perl/펄] 한글 유니코드 코드 값(번호) 구하기 함수; Hangul Unicode Code Value
특정 글자의 "유니코드 값"을 구하는 방법입니다. 유니코드 값이란, 유니코드 번호, 즉 "유니코드 코드 포인트(Code Point)"입니다. 1바이트(8비트)인 아스키 코드와 달리, 2바이트(16비트)입니다.
우선 울트라에디트 등의 편집기를 사용하여, 펄 소스 자체를 "UTF-8 유니코드"로 변환해 주어야 합니다.
그런 후 펄 소스에
use utf8;
이런 프라그마를 삽입합니다. 그러면 이제 유니코드 문자열을 펄 소스에 쓸 수 있고, 펄의 내장 함수들도 유니코드 모드로 작동합니다.
이렇게 해 주지 않으면, ord() 함수가, 유니코드 값이 아닌 그냥 아스키 코드 값을 출력합니다.
(UTF-8 유니코드로 다음 예제 소스를 저장해야 함)
한글 낱자 "가"의 유니코드 값은, 즉 유니코드 코드 번호는 16진수로 0xAC00 입니다.
한자 "天"의 유니코드 값은 0x5929 입니다.
1바이트 알파벳 Z 는, 유니코드에서도, 아스키 코드와 같은 값인 0x5A 가 나옵니다.
▶▶ 유니코드(UTF-8) 문자에 번호(Code Point) 붙이기 [펄/Perl]
아스키 유니코드, 16진법 2진법 10진수 상호 변환기: ▶▶ 16진수 헥사, 2진수, 10진수, 8진법 변환 계산기; Hex Calc
유니코드에 대해 더 읽기: ☞ 유니코드 | Unicode
우선 울트라에디트 등의 편집기를 사용하여, 펄 소스 자체를 "UTF-8 유니코드"로 변환해 주어야 합니다.
그런 후 펄 소스에
use utf8;
이런 프라그마를 삽입합니다. 그러면 이제 유니코드 문자열을 펄 소스에 쓸 수 있고, 펄의 내장 함수들도 유니코드 모드로 작동합니다.
이렇게 해 주지 않으면, ord() 함수가, 유니코드 값이 아닌 그냥 아스키 코드 값을 출력합니다.
ord() 함수로, "유니코드 문자 번호" 알아내기 예제 소스
(UTF-8 유니코드로 다음 예제 소스를 저장해야 함)
#!/usr/bin/perl
use strict; use warnings;
use utf8;
my $s = "가";
printf("%04X\n", ord($s));
# 출력 결과: AC00
printf("%04X\n", ord("天"));
# 출력 결과: 5929
printf("%04X\n", ord("Z"));
# 출력 결과: 005A
use strict; use warnings;
use utf8;
my $s = "가";
printf("%04X\n", ord($s));
# 출력 결과: AC00
printf("%04X\n", ord("天"));
# 출력 결과: 5929
printf("%04X\n", ord("Z"));
# 출력 결과: 005A
한글 낱자 "가"의 유니코드 값은, 즉 유니코드 코드 번호는 16진수로 0xAC00 입니다.
한자 "天"의 유니코드 값은 0x5929 입니다.
1바이트 알파벳 Z 는, 유니코드에서도, 아스키 코드와 같은 값인 0x5A 가 나옵니다.
▶▶ 유니코드(UTF-8) 문자에 번호(Code Point) 붙이기 [펄/Perl]
아스키 유니코드, 16진법 2진법 10진수 상호 변환기: ▶▶ 16진수 헥사, 2진수, 10진수, 8진법 변환 계산기; Hex Calc
유니코드에 대해 더 읽기: ☞ 유니코드 | Unicode
tag: perl
Perl | 펄
<< Home