您好我正在浏览此循环并发送单词lines
和字符串str
的列表以匹配它。出于某种原因,它不打印eureka
但是:
def search_array(str, lines)
count = 0
lines.each do |i|
count +=1
if str == i
puts 'eureka'
end
end
end
FILE_LOC = "words.txt"
lines = File.readlines(FILE_LOC)
word = "hello"
search_array(word, lines)
答案 0 :(得分:0)
当我这样做时,它适用于我:
lines = ["a", "b", "c"]
search_array("b", lines)
您是从文件中获取行还是其他类型的输入?如果是这样,它们是否以换行符结尾?如果是这样,请尝试:
if str == i.chomp
答案 1 :(得分:0)
这对我有用:
class Looper
def search_array(str, lines)
count = 0
lines.each do |i|
count +=1
if str == i
puts 'eureka'
end
end
end
end
looper = Looper.new
looper.search_array('fish', ['taco', 'horse', 'fish'])
我不确定您是如何运行程序的,但您可以将其复制并粘贴到文本编辑器中并将其另存为“LooperTest.rb”。然后打开终端并将目录更改为包含此文件的路径,并按以下方式运行:ruby LooperTest.rb