2010-07-27 5 views
1

나는 txt를 읽고 두 개의 문자열을 검색하는 VBScript를 만들고 마지막 결과 만 을 제공합니다.TXT에서 두 개의 문자열을 검색하는 VBScript

문자열 1 : Hello123

문자열 2 : TXT는 다음과 같습니다 Test123

:

27.07.2010 09:45 ... DumDumDum ... 
27.07.2010 09:45 ... BlaBlaBla ... 
27.07.2010 09:45 ... Hello123 ... 
27.07.2010 09:45 ... BlaBlaBla ... 
27.07.2010 09:45 ... DumDumDum ... 
27.07.2010 09:45 ... DumDumDum ... 
27.07.2010 09:45 ... Hello123 ... 'This Result 
27.07.2010 09:45 ... BlaBlaBla ... 
27.07.2010 09:45 ... BlaBlaBla ... 
27.07.2010 09:45 ... DumDumDum ... 
27.07.2010 09:45 ... Test123 ... 
27.07.2010 09:45 ... DumDumDum ... 
27.07.2010 09:45 ... Test123 ...  'And this Result 
27.07.2010 09:45 ... DumDumDum ... 
27.07.2010 09:45 ... BlaBlaBla ... 

나는 이런 식으로 뭔가를 시도,하지만 난 모르겠어요 어떻게해야합니까 :

ReadALL로 txt 읽기 i 생각하고 검색 부분보다.

if string 1 not found then 
    msgbox "nothing found" 
    Goto NEXT 
else 
    if string 2 not found then 
     msgbox "nothing found" 
    else 
     msgbox "found" 

    End if 
End if 
NEXT 

누군가가 아이디어를 갖고 나를 도와 줄 수 있습니까?

인사말, 마티아스

답변

2

이 아니 더 큰 VBScript를 프로그램의 일환 당신이 물건을 다운로드 할 여유가 있다면, 당신은 파일 처리 도구를 사용할 수 있습니다, 같은 gawk for windows 예를 들어, 하나 라이너

C:\test> gawk "/Hallo123/{h=$0}/Test123/{t=$0}END{print h \"\n\" t}" file 
27.07.2010 09:45 ... Hallo123 ... 'This Result 
27.07.2010 09:45 ... Test123 ...  'And this Result 

vbscript를 사용하여 instr()을 사용하여 각 문자열 "Hallo123"및 "Test123"을 확인한 다음 해당 행에 변수를 지정합니다. 파일 반복의 끝에서이 두 변수를 출력하십시오. "안녕"에 대한 그에 대한

Set objFS = CreateObject("Scripting.FileSystemObject") 
'File to scan 
strFile = "c:\test\file.txt" 
'Pattern to search for, eg Hallo 
strPattern = "Hallo" 
Set objFile = objFS.OpenTextFile(strFile) 
Do Until objFile.AtEndOfStream 
    strLine = objFile.ReadLine 
    If InStr(strLine,strPattern)>0 Then 
     WScript.Echo strLine 
       H=strLine 
    End If 
Loop 
Wscript.Echo H 
+0

덕분에 검색

예를하지만 난 VBScript를 :-)에있을 것이다, 큰 스크립트 – Sebastian

+0

에서 그 한 부분은 당신은 스크립트로 날이 보여줄 수 있기 때문에? – Sebastian

+0

예를 들어 주셔서 감사하지만 내 문제는 어떻게 마지막으로 설립 된 문자열 1 다음에 두 번째 문자열을 검색 할 수 있습니까? 나는 행복하다 .-D – Sebastian