PerlのUnicodeの扱いについて ¥p{Hiragana}, ¥p{Katakana}

PerlでのUnicodeの扱いについて

http://www.lr.pi.titech.ac.jp/~abekawa/perl/perl_unicode.html#standard

にあるように、\p{Hiragana} \p{Katakana} \p{Han}でそれぞれ「ひらがな」、「カタカナ」、「漢字」とマッチするというが、
どうもうまく行かない。

と思ったら,UTF8のフラグのON/OFFが問題だった模様。

while(){
$word = chomp;

if(decode('utf8', $word) =~ /\p{Hiragana}|\p{Katakana}|\p{Han}/)
print "$wordは日本語を含んでいます。\n";
}else{
print "$wordは日本語を含んでいません\n";
}
}
これでちゃんと、ひらがな・カタカナ・漢字にマッチングします。