データ量と出現頻度と、呼び出し側でのデータの持ち方がわからない限り、最適解は出せないと思う
用途はなんだろう?半角カナが通るのにカナ小文字が使えないシステムなんて、大昔のオンラインシステムぐらいしか思い付かんけど