文字列を取得し、すべての文字を次の文字に変更し、母音を大文字にして同じ文字列を返すコードを作成しました。ただし、実行しようとすると、母音が期待どおりに大文字にならないようです。
これは私のコードです:
def LetterChanges(str)
str = str.downcase.split (" ")
str.each do |word|
i = 0
while i < word.length
word[i] = word[i].next
word[i].upcase! if word[i] =~ /[aeiou]/
i += 1
end
end
return str.join(" ")
end
LetterChanges("helo world")
私のコードが機能しない理由を誰か教えてもらえますか?