恵です。 機種依存文字というぐらいですから、 機種によってコーディングされている場所が 違います。 > if(preg_match("/([\x87][\x40-\x9F])/", $str)){ > print "×"; > } > else{ > print "○"; > } ですので、「個別に機種依存文字をはじく」のではなく、 「機種依存文字でない文字をOKとする(機種依存でない文字の エリア以外の文字を全てNGとする)」という アプローチが有効だと思います。 P.S.しらふさんもおっしゃってますが、 機種依存文字は、それこそ見る環境によって 化けちゃいますから、MLには送らないほうが良いですよ。