[kansaipm] Lightening ネタ

mishima at momo.so-net.ne.jp mishima at momo.so-net.ne.jp
Thu Apr 11 11:45:31 CDT 2002


三嶋@難波です。

今日ひさしぶりに Perl を使う機会がありました。

技術的に高度な話ではないのですが、小ネタとしてどうでしょうか。


■発端

Weblogic を使って開発をしている人から、何やらプロパティファイルを見せ
られて、日本語の文字列がエンコードされているのだが、どうすればWindows
上で普通に読めるように変換できるかと尋ねられました。

見ると、日本語が \u3042\u307B\u304C\u307F\u3043\u308B\u3045 ... という
ような感じでエンコードされています。

最初に思いついたのが次の2つ。

1) テキトーな HTML を書いて、そのままの文字列を、JavaScript ... いや、
   JScript (^^; で document.write() する。

2) テキトーな HTML を書いて、
   あほがみぃるぅ
   というような感じに変換した文字列を埋めこむ。

ここまでなら、テキストエディタで十分です。
その HTML をブラウザ(IE)で表示すれば、日本語が表示されるはずです。

■やっぱり Perl

ところが、その人は値を何度も変更しながら実行結果を確認したいので、一発
で ShiftJIS コードに変換したいと言います。不精なやっちゃ。

「VB か Excel マクロでできへん?」とか言うのに対して、「Perl で Jcode 
とか使ったら簡単にできるけど、他のんやったら面倒くさいからヤダ」と答え
たら、「Cygwin に Perl と Jcode インストールしてからまた来ます」と言っ
て帰って行きました。

#よし。これで Perl ユーザが一人増えるぞと。

てなことで、Jcode を使った数行程度のスクリプトを作って解説したら、
うれしい人はおられますでしょうか?

無理すれば、ワンライナーにもなりますが。

perl -MJcode -pe 's/\\u([0-9a-f]{4})/jcode(chr(hex($1)))->sjis/gei'



More information about the Kansai-pm mailing list