コードから生成されたファイルの内容をテストしようとしています。問題はファイルのフルネームがタイムスタンプに基づいていることですabc123_#{d.strftime('%Y%m%d%I%M%S')}.log
Ruby:正規表現を使用して、ファイル名に基づいてファイルを検索して開きますか?
File
このファイルを見つけて読み取るにはどうすればよいですか?私はFile.exists?()
の正規表現をパラメータとして使ってみましたが、うまくいきませんでした。
私はstackoverflowの上の別の質問でこれを見つけた:
File.basename(file_path).match(/_.*(css|scss|sass)/)
どのように私は、ファイルが私のpublic
のフォルダにあります。私の場合、それを使用することができるだろうか?
ANSWER
だから、仕事と私の両方の下の2つの答えは、それらの組み合わせを使用していました。
Dir['public/*.log'].select { |f| f =~ /purge_cc_website/}
自体で正規表現の一種であるワイルドカードとして*
働きます。その後、実際の正規表現を使用して配列をフィルタリングします。
'f.include?( 'purge_cc_website')'には正規表現が含まれていないので少し速くなるかもしれません。 –