Mit etwas Hilfe von hier Ich habe das fast so, wie ich es will. Jetzt muss ich in der Lage sein, Daten aus einer Datei zu entfernen, bevor die Dateien verglichen werden .
Der Grund dafür ist, dass die Zeichenfolgen, "Daten", die ich entferne, bekanntermaßen bei jedem Speichern der Datei unterschiedlich sind.
Ich habe eine Regex geschrieben, um den genauen Text auszuwählen, den ich entfernen möchte, aber ich habe Probleme, ihn mit meinem aktuellen Code zu implementieren.
Hier sind die drei Hauptfunktionen
%Vor%Dies ist die Regex für das Auffinden der zu entfernenden Strings.
%Vor%BEISPIEL_FILE_BEFORE_DATA_REMOVED:
%Vor%BEISPIEL_FILE_AFTER_DATA_REMOVED:
%Vor%Ich habe versucht, etwas wie #filename = re (REMOVE_RE, subst, filename, 0, re.MULTILINE) innerhalb der get_file_info und get_file_info_from_lines zu machen, aber ich implementiere es offensichtlich nicht korrekt.
Jede Hilfe wäre willkommen, da ich gerade lerne.
Ausführen des Vergleichs:
%Vor%Ich möchte die aktuelle Datei nicht ändern. Wenn all dies im Speicher ausgeführt werden kann oder eine temporäre Datei wäre großartig.
VOLLER CODE:
%Vor% In get_file_info_from_lines
, ignoriere einfach die Zeile, wenn sie mit deinem regulären Ausdruck übereinstimmt. Auf diese Weise müssen Sie die Datei nicht wirklich ändern oder eine andere Datei erstellen, Sie berechnen einfach den Hash mit den tatsächlich relevanten Zeilen.
Tags und Links python regex file-io python-2.7