2012-06-08 2 views
0

그래서 정규 표현식을 디렉토리의 파일과 일치시키고 정규 표현식과 일치하는 모든 파일 이름을 출력해야하는 다음 코드를 작성했습니다. 그러나, 나는 내 정규 표현이 잘못되었을 수도 있다고 생각한다. [content] _ [model name] _ [more content] 형식의 파일을 출력하려고하는데, 현재 아무것도 표시하지 않습니다.디렉토리의 모든 파일을 웹 페이지에로드 ASP.NET

코드 :

 string pattern = @".*"+Request.QueryString["model"][email protected]".*"; 
     String myPath = HttpRuntime.AppDomainAppPath; 
     var matches = Directory.GetFiles([email protected]"All Plots 1 Year\").Where(path => Regex.Match(path, pattern).Success); 
     foreach (var f in matches) 
     { 
      Response.Write(f); 
      Response.Write("<br />"); 
     } 
+0

Request.QueryString을의 값이 [ "모델"] 무엇 >>, 정규식을 건너 LINQ를 생략하고 사용하는 경우? – Joshua

+0

단계별로 디버그하여 문제를 찾을 수 있습니다. 여기서 찾을 수없는 것은 무엇입니까? 파일, 디렉터리, 사용 권한, 쿼리 문자열이 잘못되었습니다 ...? 심지어 response.write 어쩌면 실패 ... 그래서 디버그 디버그, 단계별로 디버그 ... – Aristos

+0

Request.QueryString [ "모델"]는 2k01 또는 3s02와 같은 문자열을 돌려 주며, 다른 것에서 GET 매개 변수로 들어옵니다 Jquery를 사용하여이 콘텐트를 동적으로로드하는 페이지. 나는 Response.Write ("hello world")와 같은 것을 할 수 있기 때문에 페이지가로드되고 있다는 것을 알고 있으며, 팝업으로 파일 이름을 정규 표현식으로 파싱하지 않을 때 전체 디렉토리를 나열 할 수 있습니다. 그래서 잘못 구성된 정규 표현식과 관련이 있거나, 그것을 적용하는 방법에 문제가 있다고 확신합니다. –

답변

0

정규식 간단하고

Directory.GetFiles(Path.Combine(myPath, @"All Plots 1 Year\"), "*" + Request.QueryString["model"] + "*") 
관련 문제