【发布时间】:2020-07-13 00:40:26
【问题描述】:
我正在创建一个函数,该函数接受一个字符串并创建一个首字母缩写词,但遇到了错误。
当我输入"Complementary metal-oxide semiconductor" 时,我在期待"CMOS" 时得到"CS" 作为回报。有什么建议为什么会发生这种情况?我传递了很多其他字符串,它可以工作,只是在这种情况下不起作用。
class Acronym
def self.abbreviate(phrase)
letters = phrase.split("")
acronym = []
letters.each do |letter|
previous = letters.index(letter) - 1
if previous == -1
acronym.push(letter)
elsif letters[previous] == " " || letters[previous] == "-"
acronym.push(letter)
end
end
acronym.join("").upcase
end
end
【问题讨论】: