フォームのフリガナなどで全てひらがなのみ、またはカタカナのみかをチェックする方法です。 mb_ereg で判定する場合 mb_regex_encoding("UTF-8"); if (!mb_ereg("^[ぁ-ん]+$", $string)) { echo "ひらがなのみ"; } if (!mb_ereg("^[ァ-ヶー]+$", $string)) { echo "カタカナのみ"; } preg_match で判定する場合 mb_regex_encoding("UTF-8"); if (preg_match("/^[ぁ-ん]+$/u", $string)) { echo "ひらがなのみ"; } if (preg_match("/^[ァ-ヶー]+$/u", $string)) { echo "カタカナのみ"; } UTF-8 の文字コードの正規表現では u オプションをつけます。 参考