1

我正在寻找一个 C# 库,用于使用类似于 Ant 中使用的复杂模式从目录中获取文件或目录:

  • dir1/dir2/**/SVN/*--> 匹配 SVN 目录中位于目录树 dir1/dir2 下任意位置的所有文件
  • **/test/**--> 匹配路径中包含 test 元素的所有文件,包括 test 作为文件名。
  • ...

我需要自己编码吗?从 NAnt 中提取我想要的东西?或者这个图书馆存在,我的谷歌技能很烂。

Directory.GetFiles(String path, String searchPattern)不处理目录模式和NDepend.Helpers.FileDirectoryPath(顺便说一句,它是一个很棒的路径操作库)

4

2 回答 2

1

自己编码不会那么难。

只需使用带有 System.IO 方法的正确公式化的正则表达式来构建完整路径

于 2008-10-01T16:23:53.427 回答
-1

您是否愿意将“*”定义为“除斜线之外的任何内容”和“**”定义为“任何内容”?如果是这样,正则表达式转换似乎很简单。

*   -> [^\/]*
**  -> .*

然后递归枚举所有文件,并检查它们的路径是否与正则表达式匹配。

于 2008-10-04T23:28:57.080 回答