今、アクセス解析のフリーソフトをいじってるんだけど、
この検索文字列「蜿悶j螟悶@」
「取り外し」と入力しているみたいなんだけど、文字化けしてしまう。

以下のようなソースを入れて、ほとんどがきちんとした文字に変換
されるんだけど、変換されないものもわずかにある。
(自分の名前も名字と名前の間にブランクを入れないと文字化けする。
名字と名前の間にブランクを入れると、なぜかきちんと変換される。)

use Encode;
use Encode::Guess qw/ euc-jp shiftjis 7bit-jis /;

$guess = Encode::Guess::guess_encoding($a2);
if (ref $guess && $guess->name ne 'shiftjis') {
Encode::from_to($a2, $guess->name, 'shiftjis');
}

elseのときに、どのようなソースを書けばいい?
全部きちんとした文字列に変換したいです。

つーか、仕事がないので自宅警備員やってるんだけど、COBOLの仕事
くれくれー。