matz> エンコードにはpack("m")がお勧めなのかなあ.
matz> そんなに難しい問題ではないと思うので,だれか練習問題として書
matz> いてみません?

手を付け兼ねてるのは、 
    「8bitが立っていない文字と立ってる文字を分離」
する方法がうまい方法が思い付かないのです。
 /([\0-\0177]+)/
ってつかえないですよね。
あ、/([\0-~]+)/ でよいのか。