如何计算目录中文件的匹配数

时间:2013-09-24 15:49:55

标签: c# regex file

在回答这个问题后,我看了很多问题。

我如何找到目录中是否存在至少一个(如果你给我的数量更好)与某个正则表达式匹配的文件?

我知道我可以循环目录with this answer

中的文件

但有一种计数方法没有循环?

我尝试使用count()但不起作用

3 个答案:

答案 0 :(得分:3)

取自你的相关问题/答案,这应该有效:

int count = Directory.GetFiles(@"c:\temp").Count(path => Regex.IsMatch(path, pattern));

答案 1 :(得分:2)

通过使用Directory.GetFiles方法返回的数组的Length属性,可以在没有底部foreach循环的情况下获取它们。

int count = matches.Length;

http://msdn.microsoft.com/en-us/library/system.array.length.aspx

答案 2 :(得分:1)

如果模式很简单,那么Directory中的GetFiles已经提供了信息而不使用RegEx。

name ----------------------- phone ------------------------ address

Aldi ----------------------- 021345 ----------------------- Bogor

----------------------------------------------------------- Jakarta

John ----------------------- 034566 ----------------------- Depok