반응형

특정 단어(문자)로 시작하는 String을 찾아

중간에 특정 문자와 숫자가 들어갈 때 해당 줄(Line) 찾기

 

 

결과)

p<숫자>h<숫자>  가 들어가는 모든 줄을 출력

숫자는 정수이던 실수이던 모두 출력

그외 나머지는 Not Matched

you는 문자이므로 h뒤에 숫자가 아니어서 탈락

 

반응형

 

코드

Dim objFSO, objFile, objRegExp
Dim strData, strLine

'File System Object 생성
Set objFSO = CreateObject("Scripting.FileSystemObject")

'읽기모드로 해당 경로 열기
Set objFile = objFSO.OpenTextFile("C:\_workspace\test.txt", 1)

'text파일의 모든 줄을 읽음
strData = objFile.ReadAll

'파일 닫음
objFile.Close

'추출한 String을 출력할 새 파일을 현재경로에 생성
Set objFile = objFSO.CreateTextFile("result.txt", True)

'정규표현식 object생성
Set objRegExp = New RegExp

'숫자가 정수일때
' objRegExp.Pattern = "p\d+h\d+|P\d+H\d+"

'숫자가 정수 또는 실수일때
objRegExp.Pattern = "p\d*\.?\d+h\d*\.?\d+|P\d*\.?\d+H\d*\.?\d+"

'여러 라인중에 해당 String만 분리
lines = Split(strData, vbNewLine)

'이름을 찾아서 해당 Line을 생성한 Text파일에 쓰기(Write)
For Each strLine in lines

    '해당 패턴이 일치하는지 확인 True? or False?
    If objRegExp.Test(strLine) Then
        objFile.WriteLine(strLine)
    Else
        objFile.WriteLine("Not matched")
    End If
Next

' 파일 닫기
objFile.Close

' 성공을 알림
WScript.Echo "File Exported Successfully!!"

 

 

 

 

 

반응형

+ Recent posts