ある単語を別の文字列と比較しています。別の文字列は、アルファベットをループして、単語のすべての位置に各文字を挿入することで変化しています。
@position_counter = 0
編集:letter_loopが実行しているコードは次のとおりです。
@array = ["amethod", "variable", "block"]
def word_list_loop
@match_counter = 0
@array.each do |word|
letter_loop(word)
end
puts @match_counter
end
編集を閉じる
def letter_loop(word)
("a".."z").each do |letter|
word_plus_letter = @word.dup
word_plus_letter.insert(@position_counter, letter)
@match_counter+=1 if word.match(/\A#{word_plus_letter}\z/)
end
@position_counter+=1
letter_loop(word) unless @position_counter == (@word.length + 1)
end
私が引数に使用している単語はです"method"
。しかし、これを実行すると、が取得されindex 7 out of string (IndexError)
ます。各位置のアルファベットを正しくループしますが、unless @position_counter == (@word.length + 1)
最後まで引っ掛かっていないようです。
ifステートメントなどを使用して他のいくつかの方法を試しましたが、メソッドを完全に完了することができません。