NAME
perltw − 正 □中 文 Perl 指 南
DESCRIPTION
□迎 □到 Perl 的 天 地 !
□ 5.8.0 版 □始 , Perl 具 □了 完 善 的 Unicode (□□□) 支 援 , 也 □□支 援 了 □e多 拉 丁 □系 以 外 的 □□方 式 ; CJK (中 日 □) 便 是 其 中 的 一 部 份 . Unicode 是 □□性 的 □□, □□涵 □e世 界 上 所 有 的 字 符 : 西 方 世 界 , □方 世 界 , 以 及 □者 □的 一 切 (希 □文 , □利 □文 , 阿 拉 伯 文 , 希 伯 □文 , 印 度 文 , 印 地 安 文 , 等 等 ). 它 也 容 □了 多 □作 □系 □□平 □ (如 PC 及 □金 塔 ).
Perl 本 身 以 Unicode □行 操 作 . □表 示 Perl □部 的 字 串 □料 可 用 Unicode 表 示 ; Perl 的 函 式 □算 符 (例 如 正 □表 示 式 比 □) 也 能 □ Unicode □行 操 作 . 在 □入 及 □出 □, □了 □理 以 Unicode 之 前 的 □□方 式 □存 的 □料 , Perl 提 供 了 Encode □□模 □, 可 以 □你 □易 地 □取 及 □入 □有 的 □□□料 .
Encode 延 伸 模 □支 援 下 列 正 □中 文 的 □□方 式 (’big5’ 表 示 ’big5−eten’):
big5-eten Big5 □□ (含 倚 天 延 伸 字 形 ) big5-hkscs Big5 + 香 港 外 字 集 , 2001 年 版 cp950 字 □□ 950 (Big5 + 微 □添 加 的 字 符 )
□例 □□, □ Big5 □□的 □案 □成 Unicode, 祗 需 □入 下 列 指 令 :
perl -Mencoding=big5,STDOUT,utf8 -pe1 < file.big5 > file.utf8
Perl 也 □附 了 "piconv", 一 支 完 全 以 Perl □成 的 字 符 □□工 具 程 式 , 用 法 如 下 :
piconv -f big5 -t utf8 < file.big5 > file.utf8 piconv -f utf8 -t big5 < file.utf8 > file.big5
另 外 , 利 用 encoding 模 □, 你 可 以 □易 □出 以 字 符 □□位 的 程 式 □, 如 下 所 示 :
#!/usr/bin/env perl # □□ big5 字 串 解 析 ; □□□出 入 及 □□□□都 □□ big5 □□ use encoding ’big5’, STDIN => ’big5’, STDOUT => ’big5’; print length("□□"); # 2 (□引 □表 示 字 符 ) print length(’□□’); # 4 (□引 □表 示 位 元 □) print index("□□教 □", "彖 □"); # -1 (不 包 含 此 子 字 串 ) print index(’□□教 □’, ’彖 □’); # 1 (□第 二 □位 元 □□始 )
在 最 後 一 列 例 子 □, "□" 的 第 二 □位 元 □□ "□" 的 第 一 □位 元 □□合 成 Big5 □的 "彖 "; "□" 的 第 二 □位 元 □□□ "教 " 的 第 一 □位 元 □□合 成 "□". □解 □了 以 前 Big5 □比 □□理 上 常 □的 □□.
□外 的 中 文 □□
如 果 需 要 更 多 的 中 文 □□, 可 以 □ CPAN (<http://www.cpan.org/>) 下 □ Encode::HanExtra 模 □. 它 目 前 提 供 下 列 □□方 式 :
cccii 1980 年 文 建 □的 中 文 □□交 □□ euc-tw Unix 延 伸 字 符 集 , 包 含 CNS11643 平 面 1-7 big5plus 中 文 □位 化 技 □推 □基 金 □的 Big5+ big5ext 中 文 □位 化 技 □推 □基 金 □的 Big5e
另 外 , 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 □源 的 □址
<http://www.perl.com/>
Perl 的 首 □ (由 □□□公 司 □□)
Perl □合 典 藏 □ (Comprehensive Perl Archive Network)
Perl □□□□一 □
□□
Perl 的 □址
<http://www.oreilly.com.tw/chinese/perl/index.html>
正 □中 文 版 的 □□□ Perl □藉
<http://groups.google.com/groups?q=tw.bbs.comp.lang.perl>
□□ Perl □□□□□ (也 就 是 各 大 BBS 的 Perl □□版 )
Perl
使 用 者 集 □
<http://www.pm.org/groups/asia.shtml#Taiwan>
□□ Perl 推 □□一 □
□立 □□上 聊 天 室
Unicode
相 □□址
<http://www.unicode.org/>
Unicode □□□□ (Unicode □□的 制 定 者 )
<http://www.cl.cam.ac.uk/%7Emgk25/unicode.html>
Unix/Linux 上 的 UTF−8 及 Unicode 答 客 □
中
文 化 □□
□什 □叫 "正
□中 文 " 不 叫
"繁 □中 文 "?
<http://www.csie.ntu.edu.tw/~b7506051/mozilla/faq.html#faqglossary>
中 文 化 □□□盟
Linux □□中 文 化 □□
<http://www.linux.org.tw/CLDP/>
SEE ALSO
Encode, Encode::TW, encoding, perluniintro, perlunicode
AUTHORS
Jarkko Hietaniemi <jhi [AT] iki.fi>
Autrijus Tang (唐 宗 □) <autrijus [AT] autrijus.org>