在回答这个问题后,我看了很多问题。
我如何找到目录中是否存在至少一个(如果你给我的数量更好)与某个正则表达式匹配的文件?
我知道我可以循环目录with this answer
中的文件但有一种计数方法没有循环?
我尝试使用count()但不起作用
答案 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