Ik ben een script aan het schrijven waarin ik in staat ben om een specifiek stuk tekst te zoeken in een txt bestand en dit vervolgens te schrijven in een ander txt bestand. Ik gebruik de namen: 'f1' en 'f2'. In het 'f1' bestand staan verschillende tekstdelen die een begin en eind marker hebben. De begin marker is variabel: bijvoorbeeld "* 1", "*2", of "* 3". De eind marker is steeds een enkele asterix ("*"). Het is nu de bedoeling als de variabele begin marker bijvoorbeeld "*1" is om alle regels na "*1" te lezen totdat de eindmarker "*" bereikt is.
Ik ben een beginner en moet veel leren. Op google staan een aantal voorbeelden, maar die zijn erg ingewikkeld. Ik probeer met zo weinig mogelijk regels iets te maken dat ik in een functie kan stoppen om dit vervolges vaker te gebruiken. Zoals gezegd is de begin marker variabel.
Nadat ik de code heb uitgevoerd krijg ik alleen de beginmarker te zien in f2. De tekst die hierna volgt in f1 wordt niet meegenomen. Ik kan in alle opgezochte code voorbeelden van internet ook geen duidelijke informatie vinden hoe ik de eindmarker in de code moet aangeven.
Ik heb dit voeger in basic ooit een keer voor elkaar gekregen, maar dat is al lang geleden. In python heb ik daar niets aan. Wie kan mij vooruit helpen.
Ik ben een beginner en moet veel leren. Op google staan een aantal voorbeelden, maar die zijn erg ingewikkeld. Ik probeer met zo weinig mogelijk regels iets te maken dat ik in een functie kan stoppen om dit vervolges vaker te gebruiken. Zoals gezegd is de begin marker variabel.
Python:
1
2
3
4
5
6
7
8
9
| f1 = file_in.txt f2 = file_out.txt begin_marker = "* 3" with open(f1, encoding="utf8", errors='ignore') as f: lines = f.readlines() lines = [l for l in lines if begin_marker in l] with open(f2, "w") as f1: f1.writelines(lines) |
Nadat ik de code heb uitgevoerd krijg ik alleen de beginmarker te zien in f2. De tekst die hierna volgt in f1 wordt niet meegenomen. Ik kan in alle opgezochte code voorbeelden van internet ook geen duidelijke informatie vinden hoe ik de eindmarker in de code moet aangeven.
Ik heb dit voeger in basic ooit een keer voor elkaar gekregen, maar dat is al lang geleden. In python heb ik daar niets aan. Wie kan mij vooruit helpen.