C#检查文件名是否以模式结尾

C#检查文件名是否以模式结尾,c#,regex,filenames,C#,Regex,Filenames,文件名列表如下所示: foo.pdf foo(1).pdf foo(2).pdf foo(321).pdf 我们如何检查文件名是否以模式(n).extension结尾? 如果有,如何只获取文件名而不获取(n)部分?这似乎可行 void Main() { string test = "file(321).pdf"; string pattern = @"\([0-9]+\)\."; bool m = Regex.IsMatch(test, pattern); i

文件名列表如下所示:

  • foo.pdf
  • foo(1).pdf
  • foo(2).pdf
  • foo(321).pdf
我们如何检查文件名是否以模式(n).extension结尾? 如果有,如何只获取文件名而不获取(n)部分?

这似乎可行

void Main()
{
    string test = "file(321).pdf";
    string pattern = @"\([0-9]+\)\.";
    bool m = Regex.IsMatch(test, pattern);
    if(m == true)
       test = Regex.Replace(test, pattern, ".");

   Console.WriteLine(test);
}

你试过什么吗?请发布相关代码。这对您有很大帮助:为什么不使用内置IO函数?我建议使用System.IO函数对所有具有扩展名的文件进行筛选。然后使用FileInfo类检查文件名,看它是否包含值。@极客,你能详细说明一下吗?