2013-05-23 2 views
-5

파일 목록의 파일 이름과 Regex의 데이터베이스 행을 일치시켜야합니다. 나는 C# .NET을 사용선행 0이있는 정규식

0001.jpg 
0002.bmp 
... 
0012.bmp 
0013.bmp 
0014.jpg 
... 
1012.jpg 
...  
1015.jpg 
... 

:

  • 파일 이름은 0이 붙지 않는
  • 데이터베이스 값이 숫자 앞에 0으로

샘플 파일 목록 번호입니다. 그리고 각 파일 이름을 데이터베이스의 각 행과 일치시켜야합니다.

+0

경우 샘플 코드는 당신이 시도하고있어 사용할 수 있습니까? – Jerry

+0

파일 이름이있는 테이블이 있지만 데이터가 파일 이름과 정확하게 일치하지 않습니까? 너의 문제는 무엇인가? 일치하길 원합니까? –

+0

C#을 사용하지만 왜 중요합니까? 정규식 일치 문자열이 필요합니다. –

답변

-1

당신이 정규식

^0+\d+[.](jpg|bmp|jpeg|exe) 

또는

^0+\d+[.]\S+ 
+0

답변 해 주셔서 감사합니다! 하지만 모든 데이터베이스 행을 살펴보고 각 행을 하나의 파일로 일치시켜야합니다. 위의 샘플은 많은 파일 이름과 일치합니다. –

+0

@Murat 편집이 작동해야합니다. 라인 시작 부분에있는 모든 파일 이름과 일치합니다 – Anirudha

+0

Anirudh, 예를 들어 데이터베이스에 숫자 필드가 있습니다. 175라고 말하면 정규 표현식에 삽입해야합니다. 파일 0175. *? –

-2

나는 대답을 다소 꺼려 해요,하지만 (나는 당신이하려고하는 가정 것입니다) 그 파일 이름과 일치하기 위해 당신은 시도해야합니다 : \d{4}\.(jpg|bmp)

편집 :

당신이 -1로 매우 자유주의 적이기 때문에.

정규 표현식은 코딩 문제를 해결하는 데 사용할 올바른 기술이 아니며 정규 표현식은 패턴과 일치하는 문자열을 찾는 데 사용됩니다.

불완전하게 입력 된 파일 시스템에 0이 불필요하게 입력되어 있고 40004으로 변환하고 파일 확장명을 신경 쓰지 않는 것이 문제입니다.

문제의 "최상의 해결책"은 파일의 번호 매기기 시스템을 수정하거나 단순히 완전히 다른 것을 수행하도록 설계된 기술을 사용하지 않고 C#에 선행 0을 추가하는 것입니다.

-6을 즐기십시오.

+0

각 파일 이름을 데이터베이스의 각 행과 일치시켜야합니다. 샘플이 목록의 모든 파일 이름과 일치합니다. 예를 들어 데이터베이스의 56을 파일 목록의 0056.jpg와 대조해야하지만 1056.jpg 또는 0156.bmp는 일치하지 않아야합니다. –

+0

@Murat 님이 필요에 맞게 편집했습니다. – Izzy

관련 문제