Improve and restructure t/op/pat.t and split out some unicode related tests into...
[p5sagit/p5-mst-13.2.git] / README.cn
1 If you read this file _as_is_, just ignore the funny characters you
2 see. It is written in the POD format (see perlpod manpage) which is
3 specially designed to be readable as is.
4
5 The following documentation is written in EUC-CN encoding.
6
7 Èç¹ûÄãÓÃÒ»°ãµÄÎÄ×ֱ༭Æ÷ÔÄÀÀÕâ·ÝÎļþ, ÇëºöÂÔÎÄÖÐÆæÌصÄ×¢¼Ç×Ö·û.
8 Õâ·ÝÎļþÊÇÒÔ POD (¼òÃ÷Îļþ¸ñʽ) Ð´³É; ÕâÖÖ¸ñʽÊÇΪÁËÄÜÈÃÈËÖ±½ÓÔĶÁ,
9 ¶øÌرðÉè¼ÆµÄ. ¹ØÓڴ˸ñʽµÄ½øÒ»²½ÐÅÏ¢, Çë²Î¿¼ perlpod ÏßÉÏÎļþ.
10
11 =encoding euc-cn
12
13 =head1 NAME
14
15 perlcn - ¼òÌåÖÐÎÄ Perl Ö¸ÄÏ
16
17 =head1 DESCRIPTION
18
19 »¶Ó­À´µ½ Perl µÄÌìµØ!
20
21 ´Ó 5.8.0 °æ¿ªÊ¼, Perl ¾ß±¸ÁËÍêÉƵĠUnicode (ͳһÂë) Ö§Ô®,
22 Ò²Á¬´øÖ§Ô®ÁËÐí¶àÀ­¶¡ÓïϵÒÔÍâµÄ±àÂ뷽ʽ; CJK (ÖÐÈÕº«) ±ãÊÇÆäÖеÄÒ»²¿·Ý.
23 Unicode Êǹú¼ÊÐԵıê×¼, ÊÔͼº­¸ÇÊÀ½çÉÏËùÓеÄ×Ö·û: Î÷·½ÊÀ½ç, ¶«·½ÊÀ½ç,
24 ÒÔ¼°Á½Õß¼äµÄÒ»ÇР(Ï£À°ÎÄ, ÐðÀûÑÇÎÄ, ÑÇÀ­²®ÎÄ, Ï£²®À´ÎÄ, Ó¡¶ÈÎÄ,
25 Ó¡µØ°²ÎÄ, µÈµÈ). ËüÒ²ÈÝÄÉÁ˶àÖÖ×÷ҵϵͳÓëƽ̨ (Èç PC ¼°Âó½ðËþ).
26
27 Perl ±¾ÉíÒÔ Unicode ½øÐвÙ×÷. Õâ±íʾ Perl ÄÚ²¿µÄ×Ö·û´®Êý¾Ý¿ÉÓàUnicode
28 ±íʾ; Perl µÄº¯Ê½ÓëËã·û (ÀýÈçÕý¹æ±íʾʽ±È¶Ô) Ò²ÄܶԠUnicode ½øÐвÙ×÷.
29 ÔÚÊäÈë¼°Êä³öʱ, ÎªÁË´¦ÀíÒÔ Unicode Ö®Ç°µÄ±àÂ뷽ʽ´æ·ÅµÄÊý¾Ý, Perl
30 ÌṩÁË Encode Õâ¸öÄ£¿é, ¿ÉÒÔÈÃÄãÇáÒ׵ضÁÈ¡¼°Ð´Èë¾ÉÓеıàÂëÊý¾Ý.
31
32 Encode ÑÓÉìÄ£¿éÖ§Ô®ÏÂÁмòÌåÖÐÎĵıàÂ뷽ʽ ('gb2312' ±íʾ 'euc-cn'):
33
34     euc-cn      Unix ÑÓÉì×Ö·û¼¯, Ò²¾ÍÊÇË׳ƵĹú±êÂë
35     gb2312-raw  Î´¾­´¦ÀíµÄ (µÍ±ÈÌØ) GB2312 ×Ö·û±í
36     gb12345     Î´¾­´¦ÀíµÄÖйúÓ÷±ÌåÖÐÎıàÂë
37     iso-ir-165  GB2312 + GB6345 + GB8565 + ÐÂÔö×Ö·û
38     cp936       ×ÖÂëÒ³ 936, Ò²¿ÉÒÔÓà'GBK' (À©³ä¹ú±êÂë) Ö¸Ã÷
39     hz          7 ±ÈÌØÒݳöʽ GB2312 ±àÂë
40
41 ¾ÙÀýÀ´Ëµ, ½« EUC-CN ±àÂëµÄµµ°¸×ª³É Unicode, ìóÐè¼üÈëÏÂÁÐÖ¸Áî:
42
43     perl -Mencoding=euc-cn,STDOUT,utf8 -pe1 < file.euc-cn > file.utf8
44
45 Perl Ò²ÄÚ¸½ÁË "piconv", Ò»Ö§ÍêÈ«ÒÔ Perl Ð´³ÉµÄ×Ö·ûת»»¹¤¾ß³ÌÐò, Ó÷¨ÈçÏÂ:
46
47     piconv -f euc-cn -t utf8 < file.euc-cn > file.utf8
48     piconv -f utf8 -t euc-cn < file.utf8 > file.euc-cn
49
50 ÁíÍâ, ÀûÓàencoding Ä£¿é, Äã¿ÉÒÔÇáÒ×д³öÒÔ×Ö·ûΪµ¥Î»µÄ³ÌÐòÂë, ÈçÏÂËùʾ:
51
52     #!/usr/bin/env perl
53     # Æô¶¯ euc-cn ×Ö´®½âÎö; ±ê×¼Êä³öÈë¼°±ê×¼´íÎó¶¼ÉèΪ euc-cn ±àÂë
54     use encoding 'euc-cn', STDIN => 'euc-cn', STDOUT => 'euc-cn';
55     print length("ÂæÍÕ");            #  2 (Ë«ÒýºÅ±íʾ×Ö·û)
56     print length('ÂæÍÕ');            #  4 (µ¥ÒýºÅ±íʾ×Ö½Ú)
57     print index("×»×»½Ì»å", "»×»½"); # -1 (²»°üº¬´Ë×Ó×Ö·û´®)
58     print index('×»×»½Ì»å', '»×»½'); #  1 (´ÓµÚ¶þ¸ö×Ö½Ú¿ªÊ¼)
59
60 ÔÚ×îºóÒ»ÁÐÀý×ÓÀï, "×»" µÄµÚ¶þ¸ö×Ö½ÚÓë "×»" µÄµÚÒ»¸ö×Ö½Ú½áºÏ³É EUC-CN
61 ÂëµÄ "»×"; "×»" µÄµÚ¶þ¸ö×Ö½ÚÔòÓë "½Ì" µÄµÚÒ»¸ö×Ö½Ú½áºÏ³É "»½".
62 Õâ½â¾öÁËÒÔÇ° EUC-CN Âë±È¶Ô´¦ÀíÉϳ£¼ûµÄÎÊÌâ.
63
64 =head2 ¶îÍâµÄÖÐÎıàÂë
65
66 Èç¹ûÐèÒª¸ü¶àµÄÖÐÎıàÂë, ¿ÉÒÔ´Ó CPAN (L<http://www.cpan.org/>) ÏÂÔØ
67 Encode::HanExtra Ä£¿é. ËüÄ¿Ç°ÌṩÏÂÁбàÂ뷽ʽ:
68
69     gb18030     À©³ä¹ýµÄ¹ú±êÂë, °üº¬·±ÌåÖÐÎÄ
70
71 ÁíÍâ, Encode::HanConvert Ä£¿éÔòÌṩÁ˼ò·±×ª»»ÓõÄÁ½ÖÖ±àÂë:
72
73     big5-simp   Big5 ·±ÌåÖÐÎÄÓë Unicode ¼òÌåÖÐÎÄ»¥×ª
74     gbk-trad    GBK ¼òÌåÖÐÎÄÓë Unicode ·±ÌåÖÐÎÄ»¥×ª
75
76 ÈôÏëÔÚ GBK Óë Big5 Ö®¼ä»¥×ª, Çë²Î¿¼¸ÃÄ£¿éÄÚ¸½µÄ b2g.pl Óë g2b.pl Á½Ö§³ÌÐò,
77 »òÔÚ³ÌÐòÄÚʹÓÃÏÂÁÐд·¨:
78
79     use Encode::HanConvert;
80     $euc_cn = big5_to_gb($big5); # ´Ó Big5 ×ªÎª GBK
81     $big5 = gb_to_big5($euc_cn); # ´Ó GBK ×ªÎª Big5
82
83 =head2 ½øÒ»²½µÄÐÅÏ¢
84
85 Çë²Î¿¼ Perl ÄÚ¸½µÄ´óÁ¿ËµÃ÷Îļþ (²»ÐÒÈ«ÊÇÓÃÓ¢ÎÄдµÄ), À´Ñ§Ï°¸ü¶à¹ØÓÚ
86 Perl µÄ֪ʶ, ÒÔ¼° Unicode µÄʹÓ÷½Ê½. ²»¹ý, ÍⲿµÄ×ÊÔ´Ï൱·á¸»:
87
88 =head2 Ìṩ Perl ×ÊÔ´µÄÍøÖ·
89
90 =over 4
91
92 =item L<http://www.perl.com/>
93
94 Perl µÄÊ×Ò³ (ÓÉÅ·À³Àñ¹«Ë¾Î¬»¤)
95
96 =item L<http://www.cpan.org/>
97
98 Perl ×ۺϵä²ØÍø (Comprehensive Perl Archive Network)
99
100 =item L<http://lists.perl.org/>
101
102 Perl ÓʵÝÂÛ̳һÀÀ
103
104 =back
105
106 =head2 Ñ§Ï° Perl µÄÍøÖ·
107
108 =over 4
109
110 =item L<http://www.oreilly.com.cn/html/perl.html>
111
112 ¼òÌåÖÐÎÄ°æµÄÅ·À³Àñ Perl Êé½å
113
114 =back
115
116 =head2 Perl Ê¹ÓÃÕß¼¯»á
117
118 =over 4
119
120 =item L<http://www.pm.org/groups/asia.html>
121
122 Öйú Perl Íƹã×éÒ»ÀÀ
123
124 =back
125
126 =head2 Unicode Ïà¹ØÍøÖ·
127
128 =over 4
129
130 =item L<http://www.unicode.org/>
131
132 Unicode Ñ§Êõѧ»á (Unicode ±ê×¼µÄÖƶ¨Õß)
133
134 =item L<http://www.cl.cam.ac.uk/%7Emgk25/unicode.html>
135
136 Unix/Linux ÉϵĠUTF-8 ¼° Unicode ´ð¿ÍÎÊ
137
138 =back
139
140 =head1 SEE ALSO
141
142 L<Encode>, L<Encode::CN>, L<encoding>, L<perluniintro>, L<perlunicode>
143
144 =head1 AUTHORS
145
146 Jarkko Hietaniemi E<lt>jhi@iki.fiE<gt>
147
148 Audrey Tang (ÌÆ·ï) E<lt>audreyt@audreyt.orgE<gt>
149
150 =cut