我正在研究Ruby上的拉丁程序,并且遇到了一些麻烦。 控制台显示此错误Ruby:字符串在数组中显示为字符串
expected: "appleay" got: ["appleay"]
def translate(str)
alphabet = ("a".."z").to_a
vowels = ["a","e","i","o","u"]
consonants = alphabet - vowels
str.split.map do |word|
if vowels.include?(word[0])
word.to_str + "ay"
elsif word[0..2].include?("qu")
if word[0..1] == "qu"
(word[2..-1] + "quay").join(" ")
else
word[3..-1] + word[0] + "quay"
end
elsif consonants.include?(word[0]) && consonants.include?(word[1]) && consonants.include?(word[2].to_s)
word[3..-1] + word[0..2] + "ay"
elsif consonants.include?(word[0]) && consonants.include?(word[1])
word[2..-1] + word[0..1] + "ay"
elsif cononants.include?(word[0])
word[1..-1] + word[0] + "ay"
else
word
end
end
end
提前感谢!
感谢您的帮助:) –