Directory.GetDirectories 메서드를 사용하여 일부 제외 항목이있는 모든 디렉토리를 가져오고 싶습니다. 특히 그 안에 하이픈이있는 디렉토리를 제외해야합니다. 검색 패턴으로 작동하지 않는 정규식을 이미 발견했습니다. 어떤 검색 패턴을 사용합니까?C# directory.getdirectories에서 하이픈을 제외하십시오.
2
A
답변
3
아마 linq 쿼리로 충분할까요?
//query notation
var result = from d in Directory.GetDirectories(path)
where !d.Contains("-")
select d;
//'dot' notation
var result2 = Directory.GetDirectories(path)
.Where(dir => !dir.Contains("-"));
EDIT (기타 설명)
위에 용액 "LINQ to Objects" 불린다. IEnumerable
또는 IEnumerable<T>
인터페이스를 구현하는 컬렉션을 쿼리하는 방법입니다. GetDirectories
메서드는 Linq를 사용할 수있는 문자열 Array
을 반환합니다. Linq에 관한 많은 정보가 인터넷에 있습니다. Linq의 파워를 MSDN의 다음 예제를 통해 볼 수 있습니다 : 101 Linq Samples. BTW Linq는 XML, 데이터베이스 등 다양한 소스에서 데이터를 검색하는 데 유용합니다.
2
System.Collections.ObjectModel.Collection<string> resultDirs=new System.Collections.ObjectModel.Collection<string>();
foreach (string dir in System.IO.Directory.GetDirectories("path"))
{
if (!dir.Contains("-")) resultDirs.Add(dir);
}
1
하지 LINQ 방법 :
static void Main(string[] args)
{
string StartingPath = "c:\\";
List<string> mydirs = new List<string>(); // will contains folders not containing "-"
foreach (string d in Directory.GetDirectories(StartingPath))
{
if (!(d.Contains("_")))
{
mydirs.Add(d);
}
foreach (string dir in mydirs)
{
Console.WriteLine(dir);
}
}
}
}
관련 문제
- 1. 하이픈을 사용하는 Objective-C guid
- 2. 편집에서 UITableViewCell을 제외하십시오
- 3. 프로필의 종속성을 제외하십시오.
- 4. PHP에서 ie6을 제외하십시오.
- 5. m2eclipse 불필요한 폴더를 제외하십시오.
- 6. 단어 중간에 하이픈을 대체하는 정규식
- 7. link_to 속성에 하이픈을 사용 하시겠습니까?
- 8. 빌더 함수 이름에 하이픈을 사용해야합니다.
- 9. 파일의 특정 줄에서 하이픈을 제거하십시오.
- 10. RegEx : 하나 이상의 하이픈을 하나의 하이픈으로 바꾸려면? asp.net의 C#을
- 11. XML 지시문을 XslCompiledTransform.Transform 출력에서 제외하십시오.
- 12. android : resources-resources에서 리소스를 제외하십시오.
- 13. 코드 포맷에서 코드 섹션을 제외하십시오
- 14. 파일 목록의 모든 파일을 제외하십시오.
- 15. Netbeans - 편집기에서 .svn 디렉토리를 제외하십시오.
- 16. XtraTabbedMdiManager xtlupped에서 하나의 양식을 제외하십시오.
- 17. 카테고리를 get_category_parents (wordpress)에서 제외하십시오
- 18. 문자열의 동일한 부분에 regex를 제외하십시오.
- 19. PartCover를 사용할 때 System.Diagnostics.Contracts를 제외하십시오.
- 20. 코드로 최근 메뉴의 활동을 제외하십시오.
- 21. 저장 중에 XML 선언을 제외하십시오.
- 22. Eclipse에서/WebContent/images 폴더를 제외하십시오.
- 23. install4j : 제어판에서 제거 프로그램을 제외하십시오.
- 24. 개미 지퍼; 모든 하위 디렉토리와 파일을 제외하십시오.
- 25. Eclipse CDT 프로젝트에서 특정 디렉토리를 완전히 제외하십시오
- 26. 하이픈을 공백으로 대체하는이 정규식이 하이픈을 추가 하이픈으로 바꾸지 않도록 방지하는 방법은 무엇입니까?
- 27. 하이픈을 이중 하이픈으로 바꾸는 정규 표현식
- 28. 이름에 하이픈을 사용하여 MVC2 변수 처리
- 29. 테이블 필드에 하이픈을 사용할 수 있습니까?
- 30. 장고 템플릿보기에서 하이픈을 사용할 수없는 이유는 무엇입니까?
나는 새 컴퓨터 과학 학생입니다. 나는 그 코드를 많이 인식하지 못합니다. 내가 그것을 이해할 수 있도록 자료를 참고할 수 있습니까? – Paul
.NET 4.0을 사용하는 경우 [Directory.EnumerateDirectories()'] (http://msdn.microsoft.com/en-us/library/dd383304.aspx)를 대신 사용하는 것이 좋습니다. –
@Paul 귀하에게 유용한 정보가 더 있습니다. – nan