Ruby:搜索关键字的文件名
我正在用ruby编写一个case语句,它将获取当前文件名,并查看文件名是否包含特定的单词,但我的代码总是出错Ruby:搜索关键字的文件名,ruby,Ruby,我正在用ruby编写一个case语句,它将获取当前文件名,并查看文件名是否包含特定的单词,但我的代码总是出错 file = File.basename(__FILE__) case file when file.include? "daily" HtmlCache.delete_all "daily = 1" when file.include? "weekly" HtmlCache.delete_all "weekly = 1" end 有人知道如何在文件名中搜索特定单词吗?使用if
file = File.basename(__FILE__)
case file
when file.include? "daily"
HtmlCache.delete_all "daily = 1"
when file.include? "weekly"
HtmlCache.delete_all "weekly = 1"
end
有人知道如何在文件名中搜索特定单词吗?使用if而不是case。你的语法不对
file = File.basename(__FILE__)
if file.include? "daily"
HtmlCache.delete_all "daily = 1"
elsif file.include? "weekly"
HtmlCache.delete_all "weekly = 1"
end
使用if而不是case。你的语法不对
file = File.basename(__FILE__)
if file.include? "daily"
HtmlCache.delete_all "daily = 1"
elsif file.include? "weekly"
HtmlCache.delete_all "weekly = 1"
end
试试这个:
file = File.basename(__FILE__)
case file
when /daily/
HtmlCache.delete_all "daily = 1"
when /weekly/
HtmlCache.delete_all "weekly = 1"
end
Ruby的case语句使用===so case file匹配/daily/invokes/daily/===file,这在正则表达式上可以正常工作。尝试以下方法:
file = File.basename(__FILE__)
case file
when /daily/
HtmlCache.delete_all "daily = 1"
when /weekly/
HtmlCache.delete_all "weekly = 1"
end
Ruby的case语句使用===so case file匹配/daily/invokes/daily/==file,这在正则表达式上可以正常工作