如何将文件类型与正则表达式匹配?

San*_*the 0 ruby regex

我试图获得一个正则表达式来匹配排序脚本中的文件类型.

Dir.foreach(savedirs[0]) do |x|
  puts "Matching " + x + " against filetypes."
  case x
  when x.match(/^.*\.exe$/i) then puts x
  when x.match(/\.jpe?g$/) then FileUtils.move(x, sortpath[".exe"], :verbose => true)
  when x =~ /\.jpg$/ then FileUtils.move(x, sortpath[".jpg"])
  end
end
Run Code Online (Sandbox Code Playgroud)

我无法在Windows中获得任何这些匹配.我需要的是确认给定的文件名与兼容的文件类型匹配.

Jer*_*ten 5

你可以这样得到这样的扩展:

ext = File.extname(filename)

case ext
when ".exe" then ...
when ".jpg", ".jpeg" then ...
...
end
Run Code Online (Sandbox Code Playgroud)

我喜欢把正则表达式排除在外......