-If you read this file _as_is_, just ignore the funny characters you
-see. It is written in the POD format (see perlpod manpage) which is
-specially designed to be readable as is.
+=encoding utf8
-The following documentation is written in EUC-CN encoding.
-
-Èç¹ûÄãÓÃÒ»°ãµÄÎÄ×Ö±à¼Æ÷ÔÄÀÀÕâ·ÝÎļþ, ÇëºöÂÔÎÄÖÐÆæÌصÄ×¢¼Ç×Ö·û.
-Õâ·ÝÎļþÊÇÒÔ POD (¼òÃ÷Îļþ¸ñʽ) д³É; ÕâÖÖ¸ñʽÊÇΪÁËÄÜÈÃÈËÖ±½ÓÔĶÁ,
-¶øÌرðÉè¼ÆµÄ. ¹ØÓڴ˸ñʽµÄ½øÒ»²½ÐÅÏ¢, Çë²Î¿¼ perlpod ÏßÉÏÎļþ.
-
-=encoding euc-cn
+如果你用一般的文字编辑器阅览这份文件, 请忽略文中奇特的注记字符.
+这份文件是以 POD (简明文件格式) 写成; 这种格式是为了能让人直接阅读,
+而特别设计的. 关于此格式的进一步信息, 请参考 perlpod 在线文档.
=head1 NAME
-perlcn - ¼òÌåÖÐÎÄ Perl Ö¸ÄÏ
+perlcn - 简体中文 Perl 指南
=head1 DESCRIPTION
-»¶ÓÀ´µ½ Perl µÄÌìµØ!
+欢迎来到 Perl 的天地!
-´Ó 5.8.0 °æ¿ªÊ¼, Perl ¾ß±¸ÁËÍêÉÆµÄ Unicode (ͳһÂë) Ö§Ô®,
-Ò²Á¬´øÖ§Ô®ÁËÐí¶àÀ¶¡ÓïϵÒÔÍâµÄ±àÂ뷽ʽ; CJK (ÖÐÈÕº«) ±ãÊÇÆäÖеÄÒ»²¿·Ý.
-Unicode Êǹú¼ÊÐԵıê×¼, ÊÔͼº¸ÇÊÀ½çÉÏËùÓеÄ×Ö·û: Î÷·½ÊÀ½ç, ¶«·½ÊÀ½ç,
-ÒÔ¼°Á½Õß¼äµÄÒ»ÇÐ (Ï£À°ÎÄ, ÐðÀûÑÇÎÄ, ÑÇÀ²®ÎÄ, Ï£²®À´ÎÄ, Ó¡¶ÈÎÄ,
-Ó¡µØ°²ÎÄ, µÈµÈ). ËüÒ²ÈÝÄÉÁ˶àÖÖ×÷ҵϵͳÓëƽ̨ (Èç PC ¼°Âó½ðËþ).
+从 5.8.0 版开始, Perl 具备了完善的 Unicode (统一码) 支持,
+也连带支持了许多拉丁语系以外的编码方式; CJK (中日韩) 便是其中的一部分.
+Unicode 是国际性的标准, 试图涵盖世界上所有的字符: 西方世界, 东方世界,
+以及两者间的一切 (希腊文, 叙利亚文, 阿拉伯文, 希伯来文, 印度文,
+印地安文, 等等). 它也容纳了多种操作系统与平台 (如 PC 及麦金塔).
-Perl ±¾ÉíÒÔ Unicode ½øÐвÙ×÷. Õâ±íʾ Perl ÄÚ²¿µÄ×Ö·û´®Êý¾Ý¿ÉÓà Unicode
-±íʾ; Perl µÄº¯Ê½ÓëËã·û (ÀýÈçÕý¹æ±íʾʽ±È¶Ô) Ò²ÄÜ¶Ô Unicode ½øÐвÙ×÷.
-ÔÚÊäÈë¼°Êä³öʱ, ΪÁË´¦ÀíÒÔ Unicode ֮ǰµÄ±àÂ뷽ʽ´æ·ÅµÄÊý¾Ý, Perl
-ÌṩÁË Encode Õâ¸öÄ£¿é, ¿ÉÒÔÈÃÄãÇáÒ׵ضÁÈ¡¼°Ð´Èë¾ÉÓеıàÂëÊý¾Ý.
+Perl 本身以 Unicode 进行操作. 这表示 Perl 内部的字符串数据可用 Unicode
+表示; Perl 的函数与运算符 (例如正则表达式匹配) 也能对 Unicode 进行操作.
+在输入及输出时, 为了处理以 Unicode 之前的编码方式储存的数据, Perl
+提供了 Encode 这个模块, 可以让你轻易地读写使用旧有的编码格式的数据.
-Encode ÑÓÉìÄ£¿éÖ§Ô®ÏÂÁмòÌåÖÐÎĵıàÂ뷽ʽ ('gb2312' ±íʾ 'euc-cn'):
+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 Unix 扩展字符集, 也就是俗称的国标码
+ gb2312-raw 未经处理的 (低比特) GB2312 字符表
+ gb12345 未经处理的中国用繁体中文编码
+ iso-ir-165 GB2312 + GB6345 + GB8565 + 新增字符
+ cp936 字码页 936, 也可以用 'GBK' (扩充国标码) 指明
+ hz 7 比特逸出式 GB2312 编码
-¾ÙÀýÀ´Ëµ, ½« EUC-CN ±àÂëµÄµµ°¸×ª³É Unicode, ìóÐè¼üÈëÏÂÁÐÖ¸Áî:
+举例来说, 将 EUC-CN 编码的文件转成 Unicode, 只需输入以下命令:
perl -Mencoding=euc-cn,STDOUT,utf8 -pe1 < file.euc-cn > file.utf8
-Perl Ò²ÄÚ¸½ÁË "piconv", Ò»Ö§ÍêÈ«ÒÔ Perl д³ÉµÄ×Ö·ûת»»¹¤¾ß³ÌÐò, Ó÷¨ÈçÏÂ:
+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 Ä£¿é, Äã¿ÉÒÔÇáÒ×д³öÒÔ×Ö·ûΪµ¥Î»µÄ³ÌÐòÂë, ÈçÏÂËùʾ:
+另外, 利用 encoding 模块, 你可以轻易写出以字符为单位的代码, 如下所示:
#!/usr/bin/env perl
- # Æô¶¯ euc-cn ×Ö´®½âÎö; ±ê×¼Êä³öÈë¼°±ê×¼´íÎó¶¼ÉèΪ euc-cn ±àÂë
+ # 启动 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 (´ÓµÚ¶þ¸ö×Ö½Ú¿ªÊ¼)
+ print length("骆驼"); # 2 (双引号表示字符)
+ print length('骆驼'); # 4 (单引号表示字节)
+ print index("谆谆教诲", "蛔唤"); # -1 (不包含此子字符串)
+ print index('谆谆教诲', '蛔唤'); # 1 (从第二个字节开始)
-ÔÚ×îºóÒ»ÁÐÀý×ÓÀï, "×»" µÄµÚ¶þ¸ö×Ö½ÚÓë "×»" µÄµÚÒ»¸ö×Ö½Ú½áºÏ³É EUC-CN
-ÂëµÄ "»×"; "×»" µÄµÚ¶þ¸ö×Ö½ÚÔòÓë "½Ì" µÄµÚÒ»¸ö×Ö½Ú½áºÏ³É "»½".
-Õâ½â¾öÁËÒÔÇ° EUC-CN Âë±È¶Ô´¦ÀíÉϳ£¼ûµÄÎÊÌâ.
+在最后一列例子里, "谆" 的第二个字节与 "谆" 的第一个字节结合成 EUC-CN
+码的 "蛔"; "谆" 的第二个字节则与 "教" 的第一个字节结合成 "唤".
+这解决了以前 EUC-CN 码匹配处理上常见的问题.
-=head2 ¶îÍâµÄÖÐÎıàÂë
+=head2 额外的中文编码
-Èç¹ûÐèÒª¸ü¶àµÄÖÐÎıàÂë, ¿ÉÒÔ´Ó CPAN (L<http://www.cpan.org/>) ÏÂÔØ
-Encode::HanExtra Ä£¿é. ËüÄ¿Ç°ÌṩÏÂÁбàÂ뷽ʽ:
+如果需要更多的中文编码, 可以从 CPAN (L<https://www.cpan.org/>) 下载
+Encode::HanExtra 模块. 它目前提供下列编码方式:
- gb18030 À©³ä¹ýµÄ¹ú±êÂë, °üº¬·±ÌåÖÐÎÄ
+ gb18030 扩充过的国标码, 包含繁体中文
-ÁíÍâ, Encode::HanConvert Ä£¿éÔòÌṩÁ˼ò·±×ª»»ÓõÄÁ½ÖÖ±àÂë:
+另外, Encode::HanConvert 模块则提供了简繁转换用的两种编码:
- big5-simp Big5 ·±ÌåÖÐÎÄÓë Unicode ¼òÌåÖÐÎÄ»¥×ª
- gbk-trad GBK ¼òÌåÖÐÎÄÓë Unicode ·±ÌåÖÐÎÄ»¥×ª
+ big5-simp Big5 繁体中文与 Unicode 简体中文互转
+ gbk-trad GBK 简体中文与 Unicode 繁体中文互转
-ÈôÏëÔÚ GBK Óë Big5 Ö®¼ä»¥×ª, Çë²Î¿¼¸ÃÄ£¿éÄÚ¸½µÄ b2g.pl Óë g2b.pl Á½Ö§³ÌÐò,
-»òÔÚ³ÌÐòÄÚʹÓÃÏÂÁÐд·¨:
+若想在 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
+ $euc_cn = big5_to_gb($big5); # 从 Big5 转为 GBK
+ $big5 = gb_to_big5($euc_cn); # 从 GBK 转为 Big5
-=head2 ½øÒ»²½µÄÐÅÏ¢
+=head2 进一步的信息
-Çë²Î¿¼ Perl ÄÚ¸½µÄ´óÁ¿ËµÃ÷Îļþ (²»ÐÒÈ«ÊÇÓÃÓ¢ÎÄдµÄ), À´Ñ§Ï°¸ü¶à¹ØÓÚ
-Perl µÄ֪ʶ, ÒÔ¼° Unicode µÄʹÓ÷½Ê½. ²»¹ý, ÍⲿµÄ×ÊÔ´Ï൱·á¸»:
+请参考 Perl 内附的大量说明文件 (不幸全是用英文写的), 来学习更多关于
+Perl 的知识, 以及 Unicode 的使用方式. 不过, 外部的资源相当丰富:
-=head2 Ìṩ Perl ×ÊÔ´µÄÍøÖ·
+=head2 提供 Perl 资源的网址
=over 4
-=item L<http://www.perl.com/>
+=item L<https://www.perl.org/>
-Perl µÄÊ×Ò³ (ÓÉÅ·À³Àñ¹«Ë¾Î¬»¤)
+=back
-=item L<http://www.cpan.org/>
+Perl 的首页
+
+=over 4
-Perl ×ۺϵä²ØÍø (Comprehensive Perl Archive Network)
+=item L<https://www.perl.com/>
-=item L<http://lists.perl.org/>
+由 Perl 基金会运营的文章辑录
-Perl ÓʵÝÂÛ̳һÀÀ
+=item L<https://www.cpan.org/>
+
+Perl 综合典藏网 (Comprehensive Perl Archive Network)
+
+=item L<https://lists.perl.org/>
+
+Perl 邮递论坛一览
=back
-=head2 ѧϰ Perl µÄÍøÖ·
+=head2 学习 Perl 的网址
=over 4
-=item L<http://www.oreilly.com.cn/html/perl.html>
+=item L<http://www.oreilly.com.cn/index.php?func=booklist&cat=68>
-¼òÌåÖÐÎÄ°æµÄÅ·À³Àñ Perl Êé½å
+简体中文版的欧莱礼 Perl 书藉
=back
-=head2 Perl ʹÓÃÕß¼¯»á
+=head2 Perl 使用者集会
=over 4
-=item L<http://www.pm.org/groups/asia.html>
+=item L<https://www.pm.org/groups/asia.html>
-Öйú Perl Íƹã×éÒ»ÀÀ
+中国 Perl 推广组一览
=back
-=head2 Unicode Ïà¹ØÍøÖ·
+=head2 Unicode 相关网址
=over 4
-=item L<http://www.unicode.org/>
+=item L<https://www.unicode.org/>
-Unicode ѧÊõѧ»á (Unicode ±ê×¼µÄÖƶ¨Õß)
+Unicode 学术学会 (Unicode 标准的制定者)
-=item L<http://www.cl.cam.ac.uk/%7Emgk25/unicode.html>
+=item L<https://www.cl.cam.ac.uk/%7Emgk25/unicode.html>
-Unix/Linux É쵀 UTF-8 ¼° Unicode ´ð¿ÍÎÊ
+Unix/Linux 上的 UTF-8 及 Unicode 常见问题解答
=back
Jarkko Hietaniemi E<lt>jhi@iki.fiE<gt>
-Audrey Tang (ÌÆ×Úºº) E<lt>audreyt@audreyt.orgE<gt>
+Audrey Tang (唐凤) E<lt>audreyt@audreyt.orgE<gt>
+
+Sizhe Zhao E<lt>prc.zhao@outlook.comE<gt>
=cut