GNU/Linux |
CentOS 5.2 |
|
![]() |
perljp(1) |
![]() |
perljp − æ¥æ¬èª Perl ã¬ã¤ã
Perl ã®ä¸çã¸ãããã!
Perl 5.8.0 ãããUnicodeãµãã¼ãã大å¹ã«å¼·åããããã®çµæã©ãã³æå- 以å¤ã®æåã³ã¼ãã®ãµãã¼ãã CJK (ä¸- å½èªãæ¥æ¬èªããã³ã°ã«)ãå«ãã¦å ããã¾ãããUnicodeã¯ä¸çä¸- ã®æåãä¸ã¤ã®æå- ã³ã¼ãã§æ±ããã¨ãç®æããæ¨æºè¦æ ¼ã§ãããæ±ãã西ãã¯ãã¾ããã®éã®æå- ï¼ã®ãªã·ã£æåãããªã¼ã«æåãã¢ã©ãã¢æåãããã©ã¤æåããã£ã¼ã´ã¡ãã¬ã¼ãªæå- ããªã©ãªã©ï¼ããããã¾ã§ã¯OSãã³ãã¼ãç¬èªã«å®ãã¦ããæå- (PCããã³Macintosh)ããã§ã«å«ã¾ãã¦ãã¾ãã
Perl èªèº«ã¯ Unicode ã§åä½ãã¾ããPerl ã¹ã¯ãªããåã®æå- åãªãã©ã«ãæ£è¦è¡¨ç¾ã¯ Unicode ãåæã¨ãã¦ãã¾ããããã¦å¥åºåã®ããã«ã¯ãããã¾ã§ä½¿ããã¦ãããã¾ãã¾ãªæå- ã³ã¼ãã«å¯¾å¿ããã¢ã¸ã¥ã¼ã«ãã Encode ããæ¨æºè£åããã¦ãããUnicode ã¨ãããã®æåã³ã¼ãã®ç¸äºå¤æãç°¡åã«è¡ããããã«ãªã£ã¦ãã¾ãã
ç¾æç¹ã§ Encode ããµãã¼ãããæåã³ã¼ãã¯ä»¥ä¸ã®ã¨ããã§ãã
7bit-jis AdobeStandardEncoding AdobeSymbol AdobeZdingbat ascii big5 big5-hkscs cp1006 cp1026 cp1047 cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp37 cp424 cp437 cp500 cp737 cp775 cp850 cp852 cp855 cp856 cp857 cp860 cp861 cp862 cp863 cp864 cp865 cp866 cp869 cp874 cp875 cp932 cp936 cp949 cp950 dingbats euc-cn euc-jp euc-kr gb12345-raw gb2312-raw gsm0338 hp-roman8 hz iso-2022-jp iso-2022-jp-1 iso-8859-1 iso-8859-10 iso-8859-11 iso-8859-13 iso-8859-14 iso-8859-15 iso-8859-16 iso-8859-2 iso-8859-3 iso-8859-4 iso-8859-5 iso-8859-6 iso-8859-7 iso-8859-8 iso-8859-9 iso-ir-165 jis0201-raw jis0208-raw jis0212-raw johab koi8-f koi8-r koi8-u ksc5601-raw MacArabic MacCentralEurRoman MacChineseSimp MacChineseTrad MacCroatian MacCyrillic MacDingbats MacFarsi MacGreek MacHebrew MacIcelandic MacJapanese MacKorean MacRoman MacRomanian MacRumanian MacSami MacSymbol MacThai MacTurkish MacUkrainian nextstep posix-bc shiftjis symbol UCS-2BE UCS-2LE UTF-16 UTF-16BE UTF-16LE UTF-32 UTF-32BE UTF-32LE utf8 viscii
(å¨114種é¡)
ä¾ãã°ãæåã³ã¼ãFOOã®ãã¡ã¤ã«ãUTF−8ã«å¤æããã«ã¯ã以ä¸ã®ããã«ãã¾ãã
perl -Mencoding=FOO,STDOUT,utf8 -pe1 < file.FOO > file.utf8
ã¾ããPerlã«ã¯ãå¨é¨ãPerlã§æ¸ãããæå- ã³ã¼ã夿ã¦ã¼ãã£ãªãã£ãpiconvãä»å±ãã¦ããã®ã§ã以ä¸ã®ããã«ãããã¨ãã§ãã¾ãã
piconv -f FOO -t utf8 < file.FOO > file.utf8 piconv -f utf8 -t FOO < file.utf8 > file.FOO
About (jcode.pl⎪Jcode.pm⎪JPerl)
5.8以åã®ãã¹ã¯ãªãããEUC−JPã§ããã°ãªãã©ã«ã ãã¯æ±ããã¨ãã§ãã¾ãããã¾ããå¥åºåãæ±ãã¢ã¸ã¥ã¼ã«ã¨ãã¦ã¯Jcode.pmã( http://openlab.jp/Jcode/ )ãperl4ç¨ã®ã¦ã¼ãã£ãªãã£ã¨ãã¦ã¯jcode.pl( http://srekcah.org/jcode/ )ãããããå- å¨ããæ¥æ¬èªã®æ±ããCGIã§ããå©ç¨ããã¦ãããã¨ã御å- ãã®æ¹ãå°ãªããªããã¨æããã¾ãããã ããæ¥æ¬èªã«ããæ- £è¦è¡¨ç¾ããã¾ãæ±ããã¨ã¯ä¸å¯è½ã§ããã
5.005以åã®Perlã«ã¯ãæ¥æ¬èªã«ç¹åããã- ã¼ã«ã©ã¤ãºçãJperlãåå¨ãã¾ãã( http://homepage2.nifty.com/kipp/perl/jperl/index.html )ãã¾ããMac OS 9.x/Classicç¨ã®PerlãMacPerlã®æ¥æ¬èªçãMacJPerlã¨ãã¦å- å¨ãã¦ã¾ããã( http://world.std.com/~habilis/macjperl/ ).ãããã§ã¯æå- ã³ã¼ãã¨ãã¦EUC−JPã«å ãShift_JISããã®ã¾ã¾æ±ããã¨ãã§ããã¾ãæ¥æ¬èªã«ããæ- £è¦è¡¨ç¾ãæ±ããã¨ãå¯è½ã§ããã
Perl5.8ã§ã¯ããããã®æ©è½ããã¹ã¦Perlæ¬ä½ã ãã§å®ç¾ã§ããä¸ã«ãæ¥æ¬èªã®ã¿ãªããä¸è¨114ã®æå- ã³ã¼ãããã¹ã¦ããããåæã«æ±ããã¨ãã§ãã¾ããããã«ãCPANãªã©ããæ°ããæå- ã³ã¼ãç¨ã®ã¢ã¸ã¥ã¼ã«ã奿ãããã¨ãç°¡åã«ã§ããããã«ãªã£ã¦ãã¾ãã
• |
å¥åºå |
以ä¸ã®ä¾ã¯ãã¥ããShift_JISã®å¥åãEUC−JPã«å¤æãã¦åºåãã¾ãã
# jcode.pl require "jcode.pl"; while(<>){ jcode::convert(*_, ’euc’, ’sjis’); print; } # Jcode.pm use Jcode; while(<>){ print Jcode->new($_, ’sjis’)->euc; } # Perl 5.8 use Encode; while(<>){ from_to($_, ’shiftjis’, ’euc-jp’); print; } # Perl 5.8 - encoding ãå©ç¨ã㦠use encoding ’euc-jp’, STDIN => ’shiftjis’; while(<>){ print; }
• |
Jperl äºæã¹ã¯ãªãã |
ãããã"shebang"ã夿´ããã ãã§ãJperlç¨ã®scriptã®ã»ã¨ãã©ã¯å¤æ´ãªãã«å©ç¨å¯è½ã ã¨æããã¾ãã #!/path/to/jperl â #!/path/to/perl -Mencoding=euc-jp 詳ãã㯠perldoc encoding ãåç§ãã¦ãã ããã
ããã«è©³ãã
Perlã«ã¯è¨å¤§ãªè³æãä»å±ãã¦ãããPerlã®æ°æ©è½ãUnicodeãµãã¼ããããã¦Encodeã¢ã¸ã¥ã¼ã«ã®ä½¿ç¨æ³ãªã©ãç´°ããç¶²ç¾ããã¦ãã¾ãï¼æ®å¿µãªãããã»ã¨ãã©è±èªã§ã¯ããã¾ããï¼ã以ä¸ã®ã³ãã³ãã§ãããã®ä¸é¨ãé²è¦§ãããã¨ãå¯è½ã§ãã
perldoc perlunicode # Perlã®Unicodeãµãã¼ãå¨è¬ perldoc Encode # Encodeã¢ã¸ã¥ã¼ã«ã«é¢ã㦠perldoc Encode::JP # ãã¡æ¥æ¬èªæåã³ã¼ãã«é¢ãã¦
Perlå¨è¬ã«é¢ãã
URL
<http://www.perl.com/>
Perl ãã¼ã ãã¼ã¸ (O’Reilly and Associates)
<http://www.cpan.org/>
CPAN (Comprehensive Perl Archive Network)
<http://lists.perl.org/>
Perl ã¡ã¼ãªã³ã°ãªã¹ãé
Perlã®ä¿®å¾ã«å½¹ç«ã¤
URL
<http://www.oreilly.com.tw/chinese/>
O’Reilly 社ã®Perlé¢é£æ¸ç±(ç¹ä½åä¸- å½èª)
<http://www.oreilly.com.cn/chinese/>
O’Reilly 社ã®Perlé¢é£æ¸ç±(ç°¡ä½åä¸- å½èª)
<http://www.oreilly.co.jp/catalog.htm>
ãªã©ã¤ãªã¼ç¤¾ã®Perlé¢é£æ¸ç±(æ¥æ¬èª)
Perl
ã¦ã¼ã¶ã¼ã°ã«ã¼ã
<http://www.pm.org/groups/asia.shtml#China>
ä¸å½ï¼ä¸è¯äººæ°å±åå½ï¼
<http://www.pm.org/groups/asia.shtml#Japan>
æ¥æ¬
<http://www.pm.org/groups/asia.shtml#Korea%20(Republic%20of)>
éå½ï¼å¤§éæ°å½ï¼
<http://www.pm.org/groups/asia.shtml#Taiwan>
å°æ¹¾ï¼ä¸è¯æ°å½ï¼
Unicodeé¢é£ã®URL
<http://www.unicode.org/>
Unicode ã³ã³ã½ã¼ã·ã¢ã (Unicodeè¦æ ¼ã®é¸å®å£ä½)
<http://www.cl.cam.ac.uk/%7Emgk25/unicode.html>
UTF−8 and Unicode FAQ for Unix/Linux
<http://kldp.org/Translations/html/UTF8−Unicode−KLDP/UTF8−Unicode−KLDP.html>
UTF−8 and Unicode FAQ for Unix/Linux (ãã³ã°ã«è¨³)
Jarkko Hietaniemi <jhi@iki.fi> Dan Kogai (å°é£¼ãå¼¾) <dankogai@dan.co.jp>
![]() |
perljp(1) | ![]() |