LoginSignup
0
0

More than 3 years have passed since last update.

配列とif文を使って文字列をleet文字に変換

Last updated at Posted at 2020-11-19

概要

  1. 結論
  2. 前提条件
  3. どのようにコーディングするか
  4. 開発環境

結論

文字列とそれに対応するleet文字列をそれぞれ配列にすることで、変換プログラムを作ることができる。

前提条件

Rubyで文字列「A、I、U、E、O」をleet文字列「4、1、(_)、3、0」に変換する。

どのようにコーディングするか

leet.rb
input = gets.split("")    #入力された文字列を配列化する

input.each {|s|
    string = ["A", "I", "U", "E", "O"]    #変換元の文字列を配列にする
    leet = ["4", "1", "(_)", "3", "0"]    #変換後の文字列も配列にする
    a = string.index(s)    #配列inputの値が配列stringの何番目にあるか探す

    if a == nil
        print s    #該当がなければそのまま出力
    else
        print leet[a]    #該当があれば配列leetの同じインデックス番号の値を出力
    end
}

if文やcase文のみで変換を行っていく方法もありますが、上記のやり方で行数を少なくすることができました(処理スピードはあまり変わらないようですが)。

開発環境

Mac catalina 10.15.7
Vscode
Ruby 2.6.5

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0