#!/usr/local/bin/perl
# O.C.T.作ナリよ、一応。
require './jcodeLE.pl';
$| = 1;
&top_frame if $ENV{'QUERY_STRING'} eq 'enter';
$string = &decode;
$string2 = &jtoa($string);
$string2 = &atoj($string) if $string2 eq $string;
&output($string2);
exit;
sub top_frame {
print qq(Content-type: text/html\n\n);
print qq(
日本語<->アルベド語変換);
print qq();
print qq();
print qq();
print qq();
exit;
}
sub decode {
my $buffer = $ENV{'QUERY_STRING'};
my @pairs = split(/&/,$buffer);
my($name2,$value);
my $string;
foreach $pair (@pairs) {
($name2, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
&jcode'convert(*value,'sjis'); #'
$value =~ s/\t/ /g;
$value =~ s/</g;
$value =~ s/\n//g;
$FORM{$name2} = $value;
}
$string = $FORM{'string'};
return $string;
}
sub jtoa {
my $string = $_[0];
my $temp;
my %arubedo = qw(か ア み イ る ウ れ エ の オ わ カ し キ ふ ク へ ケ も コ た サ に シ ぬ ス て セ と ソ や タ き チ む ツ け テ お ト ら ナ り ニ す ヌ え ネ ろ ノ な ハ ち ヒ う フ せ ヘ そ ホ は マ い ミ を ム ね メ よ モ ま ヤ つ ユ こ ヨ さ ラ ひ リ く ル め レ ほ ロ あ ワ ゆ ヲ ん ン だ ガ ぢ ギ づ グ で ゲ ど ゴ ば ザ び ジ ぶ ズ べ ゼ ぼ ゾ が ダ ぎ ヂ ぐ ヅ げ デ ご ド ざ バ じ ビ ず ブ ぜ ベ ぞ ボ ぱ パ ぴ ピ ぷ プ ぺ ペ ぽ ポ ぁ ァ ぃ ィ ぅ ゥ ぇ ェ ぉ ォ ゃ ャ ゅ ュ ょ ョ っ ッ ー ー );
foreach (keys %arubedo) {
$temp = $_;
$temp =~ s/([\[\\\]\^\{\|\}\~])/\\$1/g;
$string =~ s/$temp/$arubedo{$_}/g;
}
return $string;
}
sub atoj {
my $string = $_[0];
my $temp;
my %arubedo = qw(ア か イ み ウ る エ れ オ の カ わ キ し ク ふ ケ へ コ も サ た シ に ス ぬ セ て タ や チ き ツ む テ け ト お ナ ら ニ り ヌ す ネ え ノ ろ ハ な ヒ ち フ う ヘ せ ホ そ マ は ミ い ム を メ ね モ よ ヤ ま ユ つ ヨ こ ラ さ リ ひ ル く レ め ロ ほ ワ あ ヲ ゆ ン ん ガ だ ギ ぢ グ づ ゲ で ゴ ど ザ ば ジ び ズ ぶ ゼ べ ゾ ぼ ダ が ヂ ぎ ヅ ぐ デ げ ド ご バ ざ ビ じ ブ ず ベ ぜ ボ ぞ パ ぱ ピ ぴ プ ぷ ペ ぺ ポ ぽ ァ ぁ ィ ぃ ゥ ぅ ェ ぇ ォ ぉ ャ ゃ ュ ゅ ョ ょ ッ っ ー ー ソ と );
foreach (keys %arubedo) {
$temp = $_;
$temp =~ s/([\[\\\]\^\{\|\}\~])/\\$1/g;
$string =~ s/$temp/$arubedo{$_}/g;
}
return $string;
}
sub output {
my $string = $_[0];
print qq(Content-type: text/html\n\n);
print qq(変換結果\n);
print qq($string);
}
__END__