🔖

【Rails】全角カタカナ英数字ひらがなを全て半角カタカナ英数字に変換する方法

2023/03/09に公開

概要

検索機能を作成する際に、ユーザが全角だろうと半角だろうと関係なく検索ができるようにしたかった場面があった。
難しいことは考えず、検索用の新しいカラムを追加して、
nameカラムに入っていた値を全て半角に直して格納しようとした。

でも、その際にふと、どうやってやるのか一瞬迷ったのでメモ

結論

NKFを使えば一瞬だった。

# 全角カタカナ英数字&ひらがな→半角カタカナ英数字
str = 'ひらがなカタカナABC012'
NKF.nkf('-w -Z4 -x', str.tr('あ-ん', 'ア-ン'))

Discussion