파싱해야 할 파일이 많으며 파일 이름에 두 개의 날짜 패턴 중 하나가 있습니다 (시스템을 업그레이드하는 중이고 파일 파서를 새롭거나 오래된 두 가지 날짜 형식을 모두 인식 할 수 있음).C# 지연 정규식 일치
파일 이름은 <fileroot>_yyyyMMdd.log
또는 <fileroot>_MMddyy.log
중 하나처럼, 나는 내가의 수를 구문 분석하는 ^.*(\\d{6,8}).*$
또는 ^.*(\\d{6}|\\d{8}).*$
같은 정규 표현식을 사용하려고 할 때마다, 그러나, 날짜를 구문 분석 할 숫자를 구문 분석 할 수 있어야합니다 날짜의 경우 캡처 그룹은 파일 이름이 8 자리 인 경우에도 길이가 항상 6 자입니다.
C#의 정규 표현식 라이브러리가 정규 표현식과 일치하도록 가능한 한 철저하게 작성되도록하는 방법이 있습니까? C#/.NET이 아닌 Java로하는 법을 알고 있습니다. 저는이 언어에서 꽤 새로 왔습니다.
^.*(\\d{6,8})\.log$
이 순서의 모든 8 개 자리를 소비하는 정규식 엔진을 강제로 :
# 1 트릭을했는데, 도와 주셔서 대단히 감사합니다. –