尝试在ruby中搜索字符串以获取输入

尝试在ruby中搜索字符串以获取输入,ruby,regex,include,gets,Ruby,Regex,Include,Gets,我在使用get搜索用户输入的字符串时遇到问题。以下是大纲: puts "What are we searching for?" search = gets z=1 result = [] file = File.open('somefile.txt', 'r+') file.each do |line| if line.include?(search) result << z end puts line z+=1 end puts "Found on l

我在使用
get
搜索用户输入的字符串时遇到问题。以下是大纲:

puts "What are we searching for?"
search = gets
z=1
result = []
file = File.open('somefile.txt', 'r+')

file.each do |line| 
  if line.include?(search)
    result << z
  end
  puts line
  z+=1
end

puts "Found on line(s) #{result}

同样的问题

这是怎么回事?提前感谢。

试试:

search = gets.chomp

当前实现还存储从输入中添加的换行符。chomp将删除\n或\r.

这是一个非常常见的Ruby问题。非常常见,我不明白为什么没有一个
getstring
自动执行它…如果这不是ruby litmus测试,我不知道是什么。谢谢你,卡西姆。
if line =~ Regexp.new(search)
search = gets.chomp