文字エンコーディング:UTF8対応です。 $str = "あいうえおわいうえおん"; if ( $str =~ /^(?:\xE3\x81[\x81-\xBF]|\xE3\x82[\x80-\x93])+$/ ) { print encode('shift-jis', decode('utf-8', "すべてが全角ひらがなである\n")); } else { print encode('shift-jis', decode('utf-8', "すべてが全角ひらがなではない\n")); } #↓ #"すべて全角ひらがなである" ※標準出力をutf8→SJISに変換しているのは、開発環境がWindows+Eclipseの都合です。Windows+Eclipseのコンソールは、SJISエンコーディングオンリーなので。