搜索模式的备份文件名

时间:2017-03-02 23:02:57

标签: c#

我可以与Directory.GetFiles(rootFolderPath, fileSearchPattern);一起使用的搜索模式将返回所有someName.xxx.txt的文件,其中xxx是序列号,如001,002,003等。基本上如果文件没有以*.txt结尾,但有*.*.txt类型的名称,我想抓住它。

filename.001.txt filename.002.txt filename.010.txt .....等。

1 个答案:

答案 0 :(得分:1)

如果您要查找的名称中包含.的文件不属于扩展名,那么我建议不要使用GetFiles方法进行模式搜索,因为模式的方式传递给Windows API,后者与文件名中的句点混淆。相反,您可以使用Linq和Regex进行过滤,如下所示:

var regexPattern = @".*\.\d{3}\.txt";

var files = Directory.GetFiles(@"C:\Users\wired\Documents")
    .Where(f => Regex.IsMatch(f, regexPattern));