yuuki blog

プログラミング をアプトプットしています。

Ruby 複数の文字を削除する方法

ローマ字を入力して、子音のみを出力します。

  • ここではローマ字は小文字のみとします。

出力例

文字を入力してください
hatena
子音はhtnです
n =0
puts "文字を入力してください"
s = gets.chomp
str = ["k","s","t","n","h","m","y","r","w","g","z","d","b","c","j","p","v","f","l"]
19.times do
  s = s.delete(str[n])
  n += 1
end
puts "子音は#{s}です"
入力した文字をstrの配列の中身と一つづつ参照していき、合致した文字を削除しています。
  • delete_if や reject を 使用すると簡単にかけるみたいですが、うまくいかなかったので、timeメソッドを使用しました。