Mein programm, um spezielle Zeilen mit dem gesuchten Wort zu suchen und herauszuschreiben funktioniert eigentlich problemlos.
Habe auch noch einen Filter eingebaut, welcher doppelte Einträge aus der Liste löscht, allerdings kommen in der Datei, in der er diese Zeilen sucht Leerzeichen am Schluss vor.
z.B Das Wort welches er suchen soll ist #test
Die Zeile in der dieses Wort vorkommt sieht komplett so aus:
#test Das ist ein Test.
Also soll er die ganze Zeile in der dieses Wort vorkommt kopieren und in eine extra datei schreiben.
Wenn X jetzt ungeschriebene Felder darstellen soll sieht das also so aus:
#test Das ist ein TestXXXXXXXXXXXXXXXXXXXXXXXXXXX
#test Das ist ein Test XXXXXXXXXXXXXXXXXXXXXXXXXXX
Wie man sieht ist in der 2. Zeile ein Leerzeichen am Schluss.
Also kann der Filter nicht eins davon löschen, da er es als einen anderen Text anerkennt wegen diesem Leerzeichen.
Wie kann ich dem Programm also sagen, dass er dieses Leerzeichen am Schluss ignorieren soll?
Der Teil vom Programm für die Suche und dem Filter sieht so aus:
Code: Alles auswählen
f=open("c:/vmi-buch/Text.txt")
f1 = open("C://Ordner/Suchwort.txt","w")
def Begriff1():
for line in f.readlines():
if line.find("#ifdef")>=0:
f1.write(line)
elif line.find("#ifndef")>=0:
f1.write(line)
Begriff1()
f1.close()
print text
liste= open("C://Ordner/Suchwort.txt")
dic={}
for i in liste:
dic[i]=''
liste=dic.keys()
liste.sort()
f = open("C://Ordner/Suchwort.txt","w")
f.writelines(liste)
print dic