我需要找到一個以「prft」開頭的文件。這個文件的名稱「prft0000.140」,「prft2100.140」,「prft1258.140」。 ..等我需要驗證這個文件是否存在一個特定的目錄。所以我有這個正則表達式來找到它們,但我不知道如何編寫過濾器來匹配。用正則表達式篩選搜索文件
List<string> prftFiles = (new DirectoryInfo(filePath))
.GetFiles(".", SearchOption.AllDirectories)
.Where(a => Regex.IsMatch(a.Name, "prft[^*]$"))
.Select(fi => fi.Name)
.ToList();
這不行「prft [^ *] $」,那麼,怎麼樣?
爲什麼在DirectoryInfo.GetFiles()已經有一個可以'開始'的通配符搜索模式時使用RegEx? http://msdn.microsoft.com/en-us/library/8he88b63.aspx – 2011-04-20 19:42:02