[kansaipm] Re: [kansaipm] IBM拡張文字をEUCに変換したいのですが・・・

Dan Kogai dankogai at dan.co.jp
Wed May 14 04:42:34 CDT 2003


On Wednesday, May 14, 2003, at 08:47  AM, M.Takimoto wrote:
> $BBmK\$G$9(B
>
> $B5W$7$V$j$N(BML$BEj9F$G$9!#(B
> IBM$B3HD%J8;z$N:.$8$C$?%7%U%H(BJIS$BJ8;zNs$r(BEUC$BJ8;zNs$KJQ49$7$?$$$N$G$9!#(B

$B$H$$$&$3$H$G$"$l$P!"LB$o$:(B Perl $B$r(B 5.8 $B$K(B Upgrade $B$7$?>e$G!"(BEncode$B$r;H$$$^$7$g$&!#(B

$B$?$@$7!"(BCP932$B$K4X$7$F$O!"(BEncode$B$r(BCPAN$B7PM3$G(BUpgrade$B$7$?J}$,$h$$$G$7$g$&!#(BCP932$B$N(Bmapping$B$K4X$7$F$O!"$A$g$C$H$7(B 
$B$?JQA+$,$"$C$?$N$G!#8=:_$N$=$l$O!":G?7HG$N(BICU$B$H8_49$K$J$C$F$$$^$9!#(B

> IBM$B3HD%J8;z$O(B 0xFA40$B!A(B0xFC4B $B$N(B388$BJ8;z$G$9$,!"$3$NCf$K$O%m!<%^?t(B
> $B;z$N(B $B-7(B $B$H$+$,$"$C$?$j$7$F%7%U%H(BJIS$B$N%3!<%ICf$NF1$8J8;z$GBeMQ$G$-(B
> $B$k$b$N$,$"$j$^$9!#(B
> $B$=$3$G(BJcode$B$r;H$C$F%7%U%H(BJIS$B$+$i(BEUC$B$KJQ49$9$k:]$K$O$3$&$$$&BeMQ$G(B
> $B$-$kJ8;z$N>l9g$O%7%U%H(BJIS$BHO0OFb$N%3!<%I$H$7$F07$C$F!"$=$l$G!"$=$N(B
> $BJ8;z$N%3!<%I$KBP1~$9$k(BEUC$B%3!<%I$KJQ49$7$?$$$N$G$9!#(B

$B$3$N>l9g$O!"$3$s$J46$8$G$$$$$G$7$g$&!#0J2<$O%m!<%^?t;z$rJQ49$9$k$@$1$G$9$,!">!<j$O$D$+$a$k$H;W$$$^$9!#(B

#!/usr/local/bin/perl
use strict;
my %roman =
     (
      "\x{2170}" => "i",    # SMALL ROMAN NUMERAL ONE
      "\x{2171}" => "ii",   # SMALL ROMAN NUMERAL TWO
      "\x{2172}" => "iii",  # SMALL ROMAN NUMERAL THREE
      "\x{2173}" => "iv",   # SMALL ROMAN NUMERAL FOUR
      "\x{2174}" => "v",    # SMALL ROMAN NUMERAL FIVE
      "\x{2175}" => "vi",   # SMALL ROMAN NUMERAL SIX
      "\x{2176}" => "vii",  # SMALL ROMAN NUMERAL SEVEN
      "\x{2177}" => "viii", # SMALL ROMAN NUMERAL EIGHT
      "\x{2178}" => "ix",   # SMALL ROMAN NUMERAL NINE
      "\x{2179}" => "x",    # SMALL ROMAN NUMERAL TEN
      "\x{2160}" => "I",    # ROMAN NUMERAL ONE
      "\x{2161}" => "II",   # ROMAN NUMERAL TWO
      "\x{2162}" => "III",  # ROMAN NUMERAL THREE
      "\x{2163}" => "IV",   # ROMAN NUMERAL FOUR
      "\x{2164}" => "V",    # ROMAN NUMERAL FIVE
      "\x{2165}" => "VI",   # ROMAN NUMERAL SIX
      "\x{2166}" => "VII",  # ROMAN NUMERAL SEVEN
      "\x{2167}" => "VIII", # ROMAN NUMERAL EIGHT
      "\x{2168}" => "IX",   # ROMAN NUMERAL NINE
      "\x{2169}" => "IX",   # ROMAN NUMERAL TEN
     );
my $re_roman = join("|" => keys %roman);
binmode STDIN  => ':encoding(cp932)';
binmode STDOUT => ':utf8';
while(<STDIN>){
     s/($re_roman)/$roman{$1}/go;
     print;
}
__END__

Dan the (J|En)code Maintainer




More information about the Kansai-pm mailing list