|
|
perlcn - �������� Perl ָ��
��ӭ���� Perl �����!
�� 5.8.0 �濪ʼ, Perl �߱������Ƶ� Unicode (ͳһ��) ֧Ԯ, Ҳ����֧Ԯ������������ϵ����ı��뷽ʽ; CJK (���պ�) �������е�һ����. Unicode �ǹ����Եı�, ��ͼ�������������е��ַ�: ��������, ��������, �Լ������һ�� (ϣ����, ��������, ��������, ϣ������, ӡ����, ӡ�ذ���, �ȵ�). ��Ҳ�����˶�����ҵϵͳ��ƽ̨ (�� PC �������).
Perl ������ Unicode ���в���. ���ʾ Perl �ڲ����ַ������ݿ��� Unicode ��ʾ; Perl �ĺ�ʽ����� (���������ʾʽ�ȶ�) Ҳ�ܶ� Unicode ���в���. �����뼰���ʱ, Ϊ�˴����� Unicode ֮ǰ�ı��뷽ʽ��ŵ�����, Perl �ṩ�� Encode ���ģ��, �����������ض�ȡ��д����еı�������.
Encode ����ģ��֧Ԯ���м������ĵı��뷽ʽ ('gb2312' ��ʾ 'euc-cn'):
euc-cn Unix �����ַ���, Ҳ�����׳ƵĹ����� gb2312-raw δ�������� (�ͱ���) GB2312 �ַ��� gb12345 δ���������й��÷������ı��� iso-ir-165 GB2312 + GB6345 + GB8565 + �����ַ� cp936 ����ҳ 936, Ҳ������ 'GBK' (���������) ָ�� hz 7 �����ݳ�ʽ GB2312 ����
������˵, �� EUC-CN ����ĵ���ת�� Unicode, �����������ָ��:
perl -Mencoding=euc-cn,STDOUT,utf8 -pe1 < file.euc-cn > file.utf8
Perl Ҳ�ڸ��� ``piconv'', һ֧��ȫ�� Perl д�ɵ��ַ�ת�����߳���, �÷�����:
piconv -f euc-cn -t utf8 < file.euc-cn > file.utf8 piconv -f utf8 -t euc-cn < file.utf8 > file.euc-cn
����, ���� encoding ģ��, ���������д�����ַ�Ϊ��λ�ij�����, ������ʾ:
#!/usr/bin/env perl # ���� euc-cn �ִ�����; ������뼰��������Ϊ euc-cn ���� use encoding 'euc-cn', STDIN => 'euc-cn', STDOUT => 'euc-cn'; print length("����"); # 2 (˫���ű�ʾ�ַ�) print length('����'); # 4 (�����ű�ʾ�ֽ�) print index("�̻�", "��"); # -1 (�����������ַ���) print index('�̻�', '��'); # 1 (�ӵڶ����ֽڿ�ʼ)
�����һ��������, ``'' �ĵڶ����ֽ��� ``'' �ĵ�һ���ֽڽ�ϳ� EUC-CN ��� ``��''; ``'' �ĵڶ����ֽ����� ``��'' �ĵ�һ���ֽڽ�ϳ� ``��''. ��������ǰ EUC-CN ��ȶԴ����ϳ���������.
�����Ҫ��������ı���, ���Դ� CPAN (http://www.cpan.org/) ���� Encode::HanExtra ģ��. ��Ŀǰ�ṩ���б��뷽ʽ:
gb18030 �����������, ������������
����, Encode::HanConvert ģ�����ṩ�˼�ת���õ����ֱ���:
big5-simp Big5 ���������� Unicode �������Ļ�ת gbk-trad GBK ���������� Unicode �������Ļ�ת
������ GBK �� Big5 ֮�以ת, ��ο���ģ���ڸ��� b2g.pl �� g2b.pl ��֧����, ���ڳ�����ʹ������д��:
use Encode::HanConvert; $euc_cn = big5_to_gb($big5); # �� Big5 תΪ GBK $big5 = gb_to_big5($euc_cn); # �� GBK תΪ Big5
��ο� Perl �ڸ��Ĵ���˵���ļ� (����ȫ����Ӣ��д��), ��ѧϰ������� Perl ��֪ʶ, �Լ� Unicode ��ʹ�÷�ʽ. ����, �ⲿ����Դ�൱�ḻ:
Perl ����ҳ (��ŷ����˾ά��)
Perl �ۺϵ���� (Comprehensive Perl Archive Network)
Perl �ʵ���̳һ��
�������İ��ŷ���� Perl ���
�й� Perl �ƹ���һ��
Unicode ѧ��ѧ�� (Unicode �����ƶ���)
Unix/Linux �ϵ� UTF-8 �� Unicode �����
the Encode manpage, the Encode::CN manpage, the encoding manpage, the perluniintro manpage, the perlunicode manpage
Jarkko Hietaniemi <jhi@iki.fi>
Autrijus Tang (���ں�) <autrijus@autrijus.org>