1

文字列を受け取って頭字語を作成する関数を作成していますが、エラーが発生しています。を入力すると、期待すると見返りが"Complementary metal-oxide semiconductor"得られます。なぜこれが起こるのでしょうか?他の多くの文字列を渡すと機能しますが、この場合は機能しません。"CS""CMOS"

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
4

4 に答える 4