带掩码的 C# Directory.GetFiles

use*_*174 1 c# linq getdirectories

在 C# 中,我想从与以下掩码匹配的特定目录中获取所有文件:

  • 前缀是 "myfile_"
  • 后缀是一些数字
  • 文件扩展名是 xml

IE

myfile_4.xml 
myfile_24.xml
Run Code Online (Sandbox Code Playgroud)

以下文件不应与掩码匹配:

_myfile_6.xml
myfile_6.xml_
Run Code Online (Sandbox Code Playgroud)

代码应该像这样(也许一些 linq 查询可以提供帮助)

string[] files = Directory.GetFiles(folder, "???");
Run Code Online (Sandbox Code Playgroud)

谢谢

sid*_*rth 5

我不擅长正则表达式,但这可能会有所帮助 -

var myFiles = from file in System.IO.Directory.GetFiles(folder, "myfile_*.xml")
              where Regex.IsMatch(file, "myfile_[0-9]+.xml",RegexOptions.IgnoreCase) //use the correct regex here
              select file;
Run Code Online (Sandbox Code Playgroud)