File: //usr/share/perl5/Jcode/Nihongo.pod
=encoding euc-jp
=head1 ̾��
Jcode - ��ܸ�ʸ������ϥ�ɥ�
=head1 ����
use Jcode;
#
# �ż��椫����
Jcode::convert($str, $ocode, $icode, "z");
# �⤷���ϥ��֥������Ȼظ��ǡ�
print Jcode->new($str)->h2z->tr($from, $to)->utf8;
=head1 ���
Jcode.pm�ϥ��֥�������Ū�ʥ��ץ����Ƚ��褫��Υ��ץ�����ξ���
���ݡ��Ȥ��Ƥ��ޤ������֥�������Ū�ʥ��ץ�����Ȥ��Ф���ʴ����ǡ�
$iso_2022_jp = Jcode->new($str)->h2z->jis;
�������ꥨ�쥬��ȤǤ��礦��
$iso_2022_jp = $str;
&jcode::convert(\$iso_2022_jp, 'jis', &jcode::getcode(\$str), "z");
���֥������Ȥ����ߤ�̵���ͤΤ���ˡ�Jcode.pm�Ϥޤ�C<getcode()>��
C<convert()>�ݡ��Ȥ��Ƥ��ޤ���
Perl�ΥС������5.8.1�ʾ�ʤ顢Jcode�ϡ�Perl 5.8�ʹߤ�ɸ��Ū��ʸ������
�ϥ�ɥ�⥸�塼��Ǥ���L<Encode>�Υ�åѡ��Ȥ��ƿ����ޤ���
=head1 ��å�
�ä˸��ڤ��ʤ��¤ꡢ�����ǵ��åɤ����Jcode���֥������Ȥ��֤��ޤ���
=head2 ���ȥ饯��
=over 2
=item $j = Jcode-E<gt>new($str [, $icode])
$str����Jcode���֥�������$j������ޤ������Ū��$icode�åȤ��ʤ���С�
��ϥ����ɤϼ�ưŪ��Ƚ�ꤵ��ޤ�����Ѳ�ǽ��ʸ������ˤĤ��Ƥϡ�����
L<getcode>�Ȥ��Ƥ���������
Perl 5.8.1�ʹߤǤϡ�C<$icode>�ˤ�L<Encode>�����Ǥ���
I<�ɤ�ʥ����ǥ���̾>��Ȥ��ޤ���
$j = Jcode->new($european, 'iso-latin1');
���֥������Ȥ�ʸ������ȡ�EUC���Ѵ����줿ʸ�����֤�ޤ����Ǥ�����
C<< print $j->euc >>�Ȥ�������ˡ�C<< print $j >>�ȤǤ��ޤ���
=over 2
=item ��ե�����Ϥ�
�����顼�ͤ�����ˡ��ʲ��Τ褦�˥�ե�����Ϥ��ޤ���
Jcode->new(\$str);
����Ϥۤ�ξ������֤���ޤ����������Ȥ��ơ�$str���ͤ��Τ�Τ�
�Ѵ�����ޤ��ʤ����̣��$str��jcode���֥������Ȥ�"tie�����"�ΤǤ��ˡ�
=back
=item $j-E<gt>set($str [, $icode])
$j������ʸ�����$str�åȤ��ޤ��������֤�Jcode���֥������Ȥ�Ȥ��Ȥ���
����Ǥ��ʥ��֥������Ȥ�������֤ȥ�������ˤʤ�ޤ��ˡ�
# mailbox��SJIS�������Ѵ�
my $jconv = new Jcode;
$/ = 00;
while(<>){
print $jconv->set(\$_)->mime_decode->sjis;
}
=item $j-E<gt>append($str [, $icode]);
$j������ʸ�����$str��ä��ޤ���
=item $j = jcode($str [, $icode]);
Jcode-E<gt>new() ��û�̷����ʲ��Τ褦�ˤǤ��ޤ���
$sjis = jcode($str)->sjis;
=back
=head2 ʸ����Υ�����
���̤ˡ�$j-E<gt>I<encoded>�Ȥ��뤳�Ȥ�I<encoded>���Ѵ����줿ʸ�������ޤ���
=over 2
=item $sjis = $j-E<gt>sjis
=item $euc = $j-E<gt>euc
=item $jis = $j-E<gt>jis
=item $sjis = $j-E<gt>sjis
=item $ucs2 = $j-E<gt>ucs2
=item $utf8 = $j-E<gt>utf8
����Ǥ��礦��
WYCIWYG = What you code is what you get :)
=item $iso_2022_jp = $j-E<gt>iso_2022_jp
C<< $j->h2z->jis >>��Ʊ���Ǥ���
Ⱦ�ѥ��ʤ϶���Ū����Ѥ��Ѵ�����ޤ���
Perl 5.8.1�ʹߤǤϡ�Encode�����ݡ��Ȥ���ɤ�ʥ����ǥ���̾��
�����ꥢ���Ǥ���ѤǤ��ޤ����㤨�С�
$european = $j->iso_latin1; # ��å�̾�Ѥ�'-'��'_'���֤������ޤ�
B<����>��L<Encode::Encoder>�������Ʊ��������ȤäƤ��ޤ���
=over 2
=item $j-E<gt>fallback($fallback)
Perl 5.8.1�ʹߤǤϡ�Jcode�������ʸ�����UTF-8���ݻ����ޤ���
I<< -E<gt>encoding >>�˥ޥåפǤ��ʤ�ʸ����'?'���֤��������ޤ�����
�����L<Encode>�Ǥ�ɸ��ư��Ǥ���
my $unistr = "\x{262f}"; # ���ۥޡ���
my $j = jcode($unistr); # $j->euc �η�̤� '?' ��
���ο����ϡ�L<Encode>Ʊ�͡��ե�����Хå�����ꤹ�뤳�Ȥ��ѹ��Ǥ��ޤ���
�ͤ�L<Encode>�Τ�ΤȰ��Ǥ����ص��Τ��ᡢC<Jcode::FB_PERLQQ>��
C<Jcode::FB_XMLCREF>��C<Jcode::FB_HTMLCREF>��L<Encode>�Τ����ؤ�
�����ꥢ���ˤʤäƤ��ޤ���
print $j->fallback(Jcode::FB_PERLQQ)->euc; # '\x{262f}'
print $j->fallback(Jcode::FB_XMLCREF)->euc; # '☯'
print $j->fallback(Jcode::FB_HTMLCREF)->euc; # '☯'
�����Х��ѿ�C<$Jcode::FALLBACK>�˥ǥե���ȤΥե�����Хå����ݻ�
����Ƥ��ޤ��Τǡ������ͤ�������뤳�Ȥǥ����С��饤�ɤǤ��ޤ���
$Jcode::FALLBACK = Jcode::FB_PERLQQ; # �ǥե���ȤΥե�����Хå��������ޤ����
=back
=item [@lines =] $jcode-E<gt>jfold([$width, $newline_str, $kref])
$width�ʥǥե���ȡ�72�����jcodeʸ������ιԤ�ޤ��֤��ޤ���
$width�ϡ�Ⱦ�ѡ�ʸ���ο�Ǥ�������ʸ����2ʸ���Ȥ��ƥ�����Ȥ��ޤ���
$newline_str�ʥǥե���Ȥ�"\n"�ˤǻ��ꤵ�줿����ʸ�����ä��ޤ���
�ޤ��֤��줿���Ԥ�ꥹ�Ȥ��֤��ޤ���
Perl 5.8.1�ʹߤ�3���ܤΰ���$kref��EUC��ʸ����������ե����
�Ϥ����Ȥǡ��ʰ�Ū�ʹ�Ƭ��§����ʤ֤鲼����ˤ�Ԥ��ޤ���
=item $length = $jcode-E<gt>jlength();
�Х���Ĺ�ǤϤʤ�������ʸ�����ʸ���Ȥ��ƿ������ʸ������֤��ޤ���
=back
=head2 MIME::Base64��Ȥ���å�
�����Υ�åɤ�Ȥ��ˤϡ�L<MIME::Base64>��ɬ�פǤ������ȡ����ñ���
perl -MCPAN -e 'CPAN::Shell->install("MIME::Base64")'
�Ȥ��ޤ������Ȥ���Perl��5.6�ʹߤǤ���ʤ顢L<MIME::Base64>��
�Х�ɥ뤵��Ƥ���Τǡ����ȡ����ɬ�פϤ���ޤ���
=over 2
=item $mime_header = $j-E<gt>mime_encode([$lf, $bpl])
$str��RFC1522�ˤ���MIME-Header���Ѵ����ޤ���$lf����ꤹ��ȡ�
�Ԥ�ޤ��֤���$lf���Ȥ��ޤ��ʥǥե���ȡ�\n�ˡ�
$bpl����ꤹ��ȡ��ޤ��֤��Х��ȿ��$bpl���Ȥ��ޤ��ʥǥե���ȡ�76��
���ο��ͤ�76�ʲ��Ǥʤ���Фʤ�ޤ���ˡ�
Perl 5.8.1�ʹߤǤϡ��ʲ��Τ褦�ˤ��Ƥ�MIME Header�����ɤ��Ǥ��ޤ���
$mime_header = $j->MIME_Header;
���ξ��C<$mime_header>������ͤ�MIME-B-encoded UTF-8�ˤʤ�ޤ���
�����C<< $j->mime_encode() >>��MIME-B-encoded ISO-2022-JP���֤��ޤ���
�Ƕ�ΤۤȤ�ɤΥ�顼�Ϥɤ���⥵�ݡ��Ȥ��Ƥ��ޤ���
=item $j-E<gt>mime_decode;
Jcode���֥������Ȥ�����ʸ�����MIME-Header�ǥ����ɤ��ޤ���Perl 5.8.1
�ʹߤʤ顢�ʲ��Τ褦�ˤ���Ʊ�����Ȥ��Ǥ��ޤ���
Jcode->new($str, 'MIME-Header');
������ξ�硢ISO-2022-JP�����ǤϤʤ�UTF-8�ʤɤˤ��б����Ƥ��ꡢ
�����MIME B Encoding�Τߤʤ餺MIME Q Encoding�ˤ��б����Ƥ���
�Τǡ�Perl 5.8.1�ʹߤǤ���Ф������Ȥ��٤��Ǥ��礦��
=back
=head2 Ⱦ�� ���� ����
=over 2
=item $j-E<gt>h2z([$keep_dakuten])
X201���ʡ�Ⱦ�ѡˤ�X208���ʡ���ѡˤ��Ѵ����ޤ���
$keep_dakuten�˿��ͤåȤ���ȡ����Τޤޤˤ��ޤ�
(����ϤĤޤꡢ�֥��ܡ��פϡ֥��פ��Ѵ����줺�ˤ��Τޤ�
�ˤʤ�Ȥ������ȤǤ�)
$j->nmatch���̤��ƥޥå�����������Ǥ��ޤ���
=item $j-E<gt>z2h
X208���ʡ���ѡˤ�X201���ʡ�Ⱦ�ѡˤ��Ѵ����ޤ���
$j->nmatch���̤��ƥޥå�����������Ǥ��ޤ���
=back
=head2 ����ɽ�����ߥ�졼��
C<< -E<gt>m() >>��C<< -E<gt>s() >>��Ȥ��ˤϡ�Perl 5.8.1�ʹߤ�
ɬ�פǤ���
=over 2
=item $j-E<gt>tr($from, $to, $opt);
Jcode���֥������Ȥ�C<tr/$from/$to/>��Ŭ�Ѥ��ޤ���$from��$to��
EUC-JP��ʸ����Ǥ���Perl 5.8.1�ʹߤǤϡ�flag�դ���UTF-8ʸ����
�����դ��ޤ���
C<$opt>�åȤ���ȡ�C<tr/$from/$to/$opt>��Ŭ�Ѥ���ޤ���C<$opt>��
'c'��'d'���뤤�Ϥ�����Ȥ߹�碌�Ǥʤ���Фʤ�ޤ���
$j->nmatch���̤��ƥޥå�����������Ǥ��ޤ���
Perl 5.8.1�ʹߤǤϡ�tr�η����˸��Τ��ä�����-E<gt>error_tr���̤��ơ�
$@�����Ǥ��ޤ���
�ʲ��Υ�åɤ�Perl 5.8.1�ʹߤǤΤ���Ѳ�ǽ�Ǥ���
=item $j-E<gt>s($patter, $replace, $opt);
�ġ���C<s/$pattern/$replace/$opt>��Ŭ�Ѥ��ޤ���C<$opt>�����ɽ�����ץ�����
Ʊ���Ǥ�������ɽ���Υ��ץ����ˤĤ��Ƥ�L<perlre>�Ȥ���������
C<< $j->tr() >>��C<< $j->s() >>�Ϥ��Υ��֥������ȼ��Ȥ��֤��Τǡ�
�ʲ��Τ褦�����Ϣ��Ǥ��ޤ���
$j->tr("A-Z", "a-z")->s("foo", "bar");
=item [@match = ] $j-E<gt>m($pattern, $opt);
C<m/$patter/$opt>��Ŭ�Ѥ��ޤ������Υ�åɤϡɥ��֥������Ȥ��֤��ʤ���
�Τǡ�C<< $j->s() >>�Τ褦�˥�åɤ�Ϣ��Ǥ��ʤ����Ȥ���դ��Ƥ���������
����ɽ���η����˸��Τ��ä���硢-E<gt>error_m��-E<gt>error_s���̤���
$@�����Ǥ��ޤ���
=back
=head2 �������ѿ�
�⤷Jcode���֥������ȤΥ������ѿ�˥��������������ʤ顢ľ�ܤ����
�˥�����������ΤǤϤʤ�������������åɤ���Ѥ��ޤ��礦�ʤ��줾OOP
�Ǥ��ˡ�
���ͤޤǤˡ�Jcode�ϡʰ���Ū���ˡ�Ǥ���˥ϥå����ե��������ˡ�
�����ե����Ȥ����Ȥǡ����ԡ��ɤ��Ŭ�����Ƥ��ޤ��ʼºݤΤȤ���
����������åɤ�Ȥ��¤ꤳ�Τ��Ȥ��Τ�ɬ�פϤ���ޤ��� �⤦����
�����ޤ����������OOP�ʤΤǤ��ˡ�
Perl 5.8.1�ʹߤǤϡ��ϥå����ե����Ȥ��褦���ѹ�����ޤ�����
����ˤ�ꡢJcode�γ�ĥ�Ϥ�Τ�������ñ�ˤʤ�ޤ���
=over 2
=item $j-E<gt>r_str
EUCʸ����ؤΥ�ե����
Perl 5.8.1�ʹߤǤ�UTF-8�ե饰��Ω�ä�UTF-8ʸ����ؤΥ�ե���Ǥ���
=item $j-E<gt>icode
ľ�����ˤ��������ʸ�������ɡ�
=item $j-E<gt>nmatch
�ޥå��������$j->tr���Ȥä��Ȥ��ˡ�
=back
=head1 ���֥롼����
=over 2
=item ($code, [$nmatch]) = getcode($str)
$str��ʸ�������ɤ��֤��ޤ����֤륳���ɤϰʲ����̤�Ǥ���
ascii Ascii ����ܸ쥳���ɤ�ޤޤʤ���
binary Binary �ʥƥ����ȥե�����ǤϤʤ���
euc EUC-JP
sjis SHIFT_JIS
jis JIS (ISO-2022-JP)
ucs2 UCS2 (Raw Unicode)
utf8 UTF8
�����顼����ƥ����Ȥ����������ƥ����Ȥ�Ȥ��ȡ���ʸ��ʬ��
�����ɤ����Ĥ��ä��Τ����֤��ޤ��������ǽҤ٤��褦�ˡ�$str��\$str
�Ǥ���ޤ���
B<jcode.pl ��ѼԤ���ء�> ���δؿ��jcode::getcode()��100%��̸ߴ���
����ޤ��������ޤ����ۤ�100%��
* ����ͤ�����ΤȤ������ν��֤ϵդȤʤ�ޤ���
jcode::getcode()��$nmatch��ǽ���֤��ޤ���
* jcode::getcode()�ϡ�EUCʸ����SJISʸ���ο�������Ȥ���'undef'��
�֤��ޤ��� Jcode::getcode()��EUC���֤��ޤ��������Jcode.pm�ˤ�
��֤��ʤ�����Ǥ���
=item Jcode::convert($str, [$ocode, $icode, $opt])
$str��$ocode�ǻ��ꤷ��ʸ�������ɤ��Ѵ����ޤ���$icode����ꤹ��ȡ�
���ʸ�����getcode()�ǥ����å���������ˡ�$icode�Ȳ��ꤷ�ޤ���
�����ǽҤ٤��褦�ˡ�$str��\$str�Ǥ���ޤ���
B<jcode.pl ��ѼԤ���ء�> ���δؿ��jcode::convert()��100%��̸ߴ���
����ޤ���
=back
=head1 �Х�
Perl��5.8.1�ʹߤξ�硢Jcode��L<Encode>�Υ�åѡ��Ȥ��ƿ����ޤ���
�ĤޤꡢJcode��Encode��ΥХ��αƶ�����ޤ���
=head1 �ռ�
���Υѥå������ϡ�ư�����ǥ������ƥ����ɤ�¿������ǡ�
���� ��� <utashiro@iij.ad.jp>���Perl4�饤�֥��jcode.pl����äƤ��ޤ���
��� ��� <ohzaki@iod.ricoh.co.jp>��ϡ���ȯ�����˽����ʳ�����
����ɽ���������������Ƥ���ޤ�����
makamaka@donzoko.net �� JEncode �ˤϡ�Jcode��Encode��ɤ�ͻ�礵�����
�����������礭�ʷ�������ޤ������ޤ�������ܸ�ޥ˥奢����£����
���������ޤ�����
������Jcode ML <jcode5@ring.gr.jp>�γ��������ã�ʤ��ˤϡ�
�����ޤǴ������ʤ��ä����ȤǤ��礦��
=head1 ����
L<Encode>
L<http://www.iana.org/assignments/character-sets>
=head1 ��
Copyright 1999-2005 Dan Kogai <dankogai@dan.co.jp>
This library is free software; you can redistribute it
and/or modify it under the same terms as Perl itself.