TIL

Rubyでアルファベットを文字コード変換するメソッドを知った

アルファベット26種を要素数26の配列で管理したかったので、aを0、bを1...みたいに対応付ける方法ないかなと思って調べた。

String#ord

文字列の最初の文字の文字コードを整数で返してくれるメソッドがいた。

https://docs.ruby-lang.org/ja/latest/method/String/i/ord.html

❯ irb              
irb(main):001:0> 'a'.ord
=> 97
irb(main):002:0> 'z'.ord
=> 122

この値から97を引けばやりたいことができる。よかった。

Integer#chr

文字列から文字コードができるということは、逆もある。

https://docs.ruby-lang.org/ja/latest/method/Integer/i/chr.html

irb(main):003:0> 97.chr
=> "a"

マルチバイト文字の場合はエンコーディング指定が必要、というのも一応覚えておく。


<< 記事一覧へ