はじめに
半角小文字カナから半角カナへ変換する必要があったので対応をメモとして残します
半角カナ→全角カナへの変換は色々と情報があったが、半角小文字カナ→半角カナへの変換はあまり情報がなかったので、同じような実装をする方の参考になればと思います
実装方法
gsub!メソッドのパターンマッチを使って変換機能を実装
gsub!メソッドは、文字列中の pattern にマッチした部分をキーにしてhashを引いた値で置き換えすることができる
上記のhashを用いての変換を使用
実装例
PATTERN = { "ァ" => "ア", "ィ" => "イ", "ゥ" => "ウ", "ェ" => "エ", "ォ" => "オ", "ッ" => "ツ", "ャ" => "ヤ", "ュ" => "ユ",
"ョ" => "ヨ", "ー" => "-" }.freeze
## 半角小文字カナを設定
str = "ァィゥェォ"
PATTERN.each do |k, _o|
str.gsub!(k, PATTERN)
end
p str
出力結果
アイウエオ
これで半角小文字カナを変更することができました
まとめ
ライブラリなどを使えばもっと簡単に実装することができるかもしれないので、分かり次第追記します