timmy: VBS Suchen und ersetzen

Ich habe folgendes script:

***********************************
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Name = FSO.OpenTextFile("C:\Dokumente und Einstellungen\T. Hintermann\Desktop\bla\text1.txt")
Set Name2=FSO.CreateTextFile("C:\Dokumente und Einstellungen\T. Hintermann\Desktop\bla\text2.txt")

do until Name.AtEndOfStream
line=Name.readLine
If InStr(line, "insured") Then
    line = Replace(line, "insured", "")
End If

Name2.writeLine line

loop
Name.close
Name2.close
************************************************

das script suche mit in text 1 zeile für zeile nach insured. wenn es das gefunden hat schreibt er in diesem fall nichts in die zeile, es entsteht dann sozusagen eine lücke. wie kann ich das übergehen, dass er sozusagen die zeile löscht?

  1. Moin moin allerseits,

    ' ***********************************
     do until Name.AtEndOfStream
      line=Name.readLine
      If InStr(line, "insured") = False Then
       Name2.writeLine line
      End If
     loop
    ' ************************************************

    Des müsste gehen.

    So weit, MfGrüßen,
    Sebastian

    --
    Selfcode sh:( fo:| ch:? rl:( br:& br:] n4:# ie:| mo:} va:{ de:< zu:) fl:( ss:| ls:& js:)
    1. Des müsste gehen.

      So weit, MfGrüßen,
      Sebastian

      Hallo,

      vielen Dank für die Antwort. Es funktioniert. Super!

      Gruss Timmy

      1. Leider kann man hier nicht beliebig viele Kriterien dranhängen. Also z.b. nach fünf verschiedenen Sachen suchen...

        1. Moin moin allerseits,

          Leider kann man hier nicht beliebig viele Kriterien dranhängen. Also z.b. nach fünf verschiedenen Sachen suchen...

          Quatsch ...

          Z.B.:
          ' ***********************************
           do until Name.AtEndOfStream
            line=Name.readLine
            If InStr(line, "erst") = False Or InStr(line, "suchen") = False Or InStr(line, "dann") = False Or InStr(line, "fragen") = False Then
             Name2.writeLine line
            End If
           loop
          ' ************************************************

          So weit, MfGrüßen,
          Sebastian

          --
          Selfcode sh:( fo:| ch:? rl:( br:& br:] n4:# ie:| mo:} va:{ de:< zu:) fl:( ss:| ls:& js:)
          1. das geht eben leider nicht, das hab ich schon probiert

            ich kriege als output genau die gleiche datei, nur mit anderem Namen...

            1. Moin moin allerseits,

              Hast ja Recht ...

              ' ***********************************
               do until Name.AtEndOfStream
                line=Name.readLine
                If InStr(line, "erst") = False And InStr(line, "suchen") = False And InStr(line, "dann") = False And InStr(line, "fragen") = False Then
                 Name2.writeLine line
                End If
               loop
              ' ************************************************

              So weit, MfGrüßen,
              Sebastian

              --
              Selfcode sh:( fo:| ch:? rl:( br:& br:] n4:# ie:| mo:} va:{ de:< zu:) fl:( ss:| ls:& js:)
            2. Hell-O!

              das geht eben leider nicht, das hab ich schon probiert
              ich kriege als output genau die gleiche datei, nur mit anderem Namen...

              Es kommt auf deine Bedingungen an. Generell gilt: Eine mit "ODER" verknüpfte Bedingung ist wahr, wenn wenigstens eine der Teilbedingungen wahr ist. Der Code lautete:

              IF  
                InStr(line, "erst") = False OR  
                InStr(line, "suchen") = False OR  
                InStr(line, "dann") = False OR  
                InStr(line, "fragen") = False  
              THEN
              

              Jetzt nimm dir einen beliebigen String und wende oben stehende Abfrage an. Nur wenn keines dieser Wort vorkommt, ist die Bedingung erfüllt. Eventuell benötigst du einen anderen Vergleichswert, einen anderen Vergleichsoperator oder einen anderen logischen Operator. Dies kann dir jedoch niemand ohne Kenntnis deiner Bedingungen sagen.

              Siechfred

              --
              Ich bin strenggenommen auch nur interessierter Laie. (molily)
              Welcome To Carcass Cuntry || Steuerfreie Geburtsbeihilfen?  || RT 221 Erfurt-Altstadt i.V.
              1. Es kommt auf deine Bedingungen an. Generell gilt: Eine mit "ODER" verknüpfte Bedingung ist wahr, wenn wenigstens eine der Teilbedingungen wahr ist. Der Code lautete:

                IF

                InStr(line, "erst") = False OR
                  InStr(line, "suchen") = False OR
                  InStr(line, "dann") = False OR
                  InStr(line, "fragen") = False
                THEN

                  
                  
                Das ist Grundsätzlich das gleiche wie von Sebastian M. E. gepostet nur anders dargestellt. Mit logischen Verknüpfungen kenn ich mich auch einigermassen aus. Aber danke trotzdem nochmals für die mühe.  
                  
                ein Beispiel:  
                  
                1  
                2  
                3  
                5  
                6  
                9  
                3  
                5  
                6  
                8  
                1  
                  
                Er soll nun überall wo 1, 3 oder 5 ist die linie Nicht ins neue Dokument schreiben. Das wäre Grundsätzlich eine ODER Verknüpfung, jedoch funktioniert die nicht mit einer If Schlaufe.
                
                1. Er soll nun überall wo 1, 3 oder 5 ist die linie Nicht ins neue Dokument schreiben. Das wäre Grundsätzlich eine ODER Verknüpfung, jedoch funktioniert die nicht mit einer If Schlaufe.

                  Klar tut sie das:

                  IF  
                    InStr(line, "1") > 0 OR  
                    InStr(line, "3") > 0 OR  
                    InStr(line, "5") > 0  
                  THEN
                  

                  Deswegen schrob ich ja, dass man dein Vorhaben auf verschiedenen Wegen umsetzen kann, ich habe jetzt einfach den Vergleichswert und den Vergleichsoperator geändert, andere Varianten wären ebenso denkbar. Eine hervorragende Anlaufstelle für VB(S) ist übrigens das MSDN.

                  Siechfred

                  --
                  Ich bin strenggenommen auch nur interessierter Laie. (molily)
                  Welcome To Carcass Cuntry || Steuerfreie Geburtsbeihilfen?  || RT 221 Erfurt-Altstadt i.V.