0
這裏混淆是我的代碼生成的文件由紅寶石/耙文件清單:
files = FileList.new('c:/temp/**/*') do |fl|
fl.exclude("*.dll")
end
puts files
怎麼來的輸出仍然包含* .dll文件的列表?我錯過了什麼?
這裏混淆是我的代碼生成的文件由紅寶石/耙文件清單:
files = FileList.new('c:/temp/**/*') do |fl|
fl.exclude("*.dll")
end
puts files
怎麼來的輸出仍然包含* .dll文件的列表?我錯過了什麼?
因爲傳遞給fl.exclude
的全局模式與實際文件系統相同,就像/temp
全局模式一樣,但由於它不是完整路徑,所以無法進行相同的匹配。
fl.exclude 'c:/temp/**/*.dll'
[繼DigitalRoss的答案]或者您可以在一個正規表示法的模式,看到docs。所以這應該工作
files = FileList.new('c:/temp/**/*') do |fl|
fl.exclude(/\.dll$/)
end
puts files