2013-02-07 1 views
0

mht (텍스트) 파일을 구문 분석하고 특정 행을 추출하려고합니다. RegExMatch가 올바르게 작동합니다. 그러나 내 루프 내부에서 "E"문자와 6 자리 숫자로 구성된 7 자리 문자열을 제외한 특정 줄에서 모든 것을 제거하고 싶습니다.광대가 RegEx를 사용하여 문자열을 정리하려고 시도했습니다.

최근 실패한 시도입니다. 이 광대는 RegEx를 잘 모릅니다.

도움 말?

감사

If RegExmatch(A_LoopReadLine,"E\d\d\d\d\d\d") 
    { 
    ECode := RegExReplace(A_LoopReadLine, "^[Ed\d\d\d\d\d\d]", "") 
    FileAppend, %ECode%., G:\2013.txt 
    } 
+0

'7'또는 '6'숫자와 어느 언어입니까? 언어를 지정해야합니다. – Anirudha

답변

1

()가기를 나타낸다 {}가 quantifier..so {n}이다 ..

RegExReplace(A_LoopReadLine, "^.*(E\d{6}).*$", "$1") 

\d{6}

6 개 자리를 나타내는 매치 선행 문자 n 회 수단이어야 .. 그룹 내에서 캡처 된 모든 내용은을 통해 참조 할 수 있습니다.여기서 n은 그룹 번호입니다.

+0

예. 그것은 깨끗한 목록을 만들어 냈습니다. 그리고 Regex도 배웠습니다. 감사! – dwilbank

관련 문제