ruby - 如何扫描文本文件中的字符串,并在字符串不存在时运行代码?

标签 ruby text

我已经尝试过:

elsif file.grep(/Mode: 1/)
   puts "test"
else
   puts "test but else" 

Codacy 表示这是错误的。有没有办法改善这一点?根据 Codacy:

unexpected token kELSIF (Using Ruby 2.2 parser; configure using `TargetRubyVersion` parameter, under `AllCops`)

unexpected token kELSE (Using Ruby 2.2 parser; configure using `TargetRubyVersion` parameter, under `AllCops`)

最佳答案

您可以使用IO::read分配文本文件内容,然后 String#include?用于检查。

file_string = File.read('path/to/file')

if file_string.include?('substring')
  puts 'Yes'
else
  puts 'No'
end

您也可以将其替换为 String#match? (更快)。

file_string.match?(/pattern/) 将返回 truefalse

关于ruby - 如何扫描文本文件中的字符串,并在字符串不存在时运行代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55363487/

相关文章:

ruby-on-rails - 获取 ActionController::RoutingError(当尝试使用 AngularJS 将数据发布到 Rails 服务器时,没有路由匹配 [OPTIONS] "/users"

c# - 使用正则表达式在一个子字符串中查找多个项目

ios - 根据实际可见字母高度在 UILabel 中垂直居中文本

javascript - 如何避免在绝对定位的堂兄 div 上突出显示所有文本

ruby-on-rails - 错误后设计重定向

ruby - Selenium-Webdriver:找到元素后获取属性

ruby - 如何最好地防范未定义的属性?

ruby-on-rails - Rails 4 真实性 token

java - java中的字符串或整数变量监听器?

r - 将书面数字转换为R中的数字