我正在逐行检查文件,并在每一行中查找单词“ BIOS”,因为包含BIOS单词的每一行都有我需要的版本号。在看到该行包含单词“ BIOS”之后,我想将整行都分成一个数组。这是我的代码:
File.open(file).each do |line|
if line.includes? 'BIOS'
array = line.split(" ")
end
end
我遇到的问题是我不断收到错误消息,说“包括?”。是未定义的方法。有没有更好的方法可以为特定的字符串解析此文件的每一行?
答案 0 :(得分:2)
是的,在Ruby中没有为includes?
定义String
。请改用include?
或[]
:https://ruby-doc.org/core-2.2.0/String.html#method-i-include-3F
因此代码应为:
File.open(file).each do |line|
if line.include? 'BIOS'
array = line.split(' ')
end
end