Opgelost REGEX hulp

Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

mariannevanh

Terugkerende gebruiker
Lid geworden
14 dec 2004
Berichten
2.132
Ik kom er niet uit hoe ik een REGEX-commando maak om in bijv. Notepad++ een zoek/vervangopdracht te maken.
Wie kan mij helpen?

In een groot tekstdocument staat:
Code:
1 FACT 1234
2 TYPE CBG-PKPL
1 FACT 1234
2 RESN CONFIDENTIAL
2 TYPE CBG-PKPL
1

De cijfers 1234 komen dus in elk groepje twee keer voor en zijn variabel. In het volgende groepje staat dus 1235.

Dit moet vervangen worden door:
Code:
1 FACT 1234
2 RESN CONFIDENTIAL
2 TYPE CBG-PKPL
1
 
Laatst bewerkt:
Ik denk dat dit meer logica is dan enkel een reguliere expressie toepassen. Je zult je moeten richten op een programmeertaal.

Al snap ik nog niet helemaal wat je precies hoe aangepast wilt hebben.
 
Al snap ik nog niet helemaal wat je precies hoe aangepast wilt hebben.
Ik zal het anders proberen te omschrijven:

Je ziet twee keer bijna hetzelfde tekstblokje. Een keer zonder en een keer met
Code:
2 RESN CONFIDENTIAL
Het blokje zonder
Code:
2 RESN CONFIDENTIAL
dient steeds verwijderd te worden.
 
Dus als tussen de regels die beginnen met FACT en TYPE geen regel staat met 2 RESN CONFIDENTIAL dan moet die regel tussengevoegd worden?
En hoeveel regels bevat jouw grote tekstdocument?
 
Nee.
Neem als uitgangspunt het blokje dat in mijn eerste post staat. De eerste twee regels moeten eruit...
Sorry dat ik het blijkbaar niet duidelijk - of zelfs fout - heb omschreven.
 
Sla onderstaand VBScript op als converteer.vbs in de map waarin je tekstbestand staat. Wijzig de naam groot.txt in de naam van jouw bestand (of andersom, wijzig de naam van jouw bestand in groot.txt) en dubbelklik op converteer.vbs.
Code:
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set inputfile = objFSO.OpenTextFile("groot.txt", 1, False)
Set outputfile = objFSO.CreateTextFile("Geconverteerd.txt", True)
Do While Not inputfile.AtEndOfStream
    line1 = inputfile.ReadLine
    line2 = inputfile.ReadLine
    If MID(line1,3,4) = "FACT" AND MID(line2,3,4) = "TYPE" Then
        'niet wegschrijven
    Else
        line3 = inputfile.ReadLine
        outputfile.WriteLine line1
        outputfile.WriteLine line2
        outputfile.WriteLine line3
    End If
Loop
inputfile.Close
msgbox "Zie file Geconverteerd.txt"
 
@AHulpje jouw script heeft me geholpen naar de oplossing van mijn vraag.
Iedereen hartelijk dank voor het meedenken!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan