>>303さん、ありがとうございます。

>>299のようにクエリを受け取ってから、
自分のやりたいことをカンタンにしたのが下記のプログラムです。

 open (FILE,"<:encoding(shiftjis)","aaa.csv");
 while(<FILE>) {
  @aaa = split(/,/,$_);
  foreach(@aaa) {
   if ($form{namae} eq $aaa[$i]) {
    print encode("shiftjis","$aaa[$i]:match<br>");
   } else {
    print encode("shiftjis","$aaa[$i]:---<br>");
   }
   $i++;
  }
  $i =0;
 }
 close(FILE);

カンマ区切りのデータとフォームの一致をみるのが目的で、
csvは複数行に渡っています(改行入り)。
半角英数の場合はマッチングできるのですが、
平仮名・漢字は一致しません。
また、半角英数・仮名漢字に共通して、
open FILEで引っ張ってきた@aaa{$1}を表示しようとすると
文字化けが起こってしまいます。