Hallo Wie bzw. mit welchem Tool kann ich in 2 Textdateien identische Zeichenfolgen mit beispielsweise minimum 10 Stellen suchen?
W7 64bit es gibt zwar haufenweise tools um unterschiede von txt Dateien anzuzeigen, aber anscheinend keines um gleichheiten anzuzeigen...
Wirf mal einen Blick auf UltraCompare. Vielleicht hilft dir das weiter. http://www.ultraedit.com/products/ultracompare.html
Hallo Cartman, hab so ein Tool mal eben in Java geschrieben. Download-Link (incl. Source): http://sebulli.com/download/gZi2tDf.zip Aufruf mit: java -jar gZi2tDf.jar 20 t1.txt t2.txt Die 20 ist die Länge, die mindestens übereinstimmen muss, dann folgen die beiden Textdateien. Gruß Gerd
Mit win64 hast Du auf der Kommandozeile die "Powershell" daher kannst Du einfach wie unter Un*x mit grep arbeiten.
Wenn du die Zeichenfolge kennst mit Notepad++ (Portable). Beide Dateien öffnen, Strg+F, Find in all opened documents.
Wäre mal eine schöne Übung für reguläre Ausdrücke. Kannst du mal 2 solcher Dateien zur Verfügung stellen ? Ich versuche dann mal mit XProfan64 was zu basteln.
Heinz Brill schrieb: > Wäre mal eine schöne Übung Das geht ja wohl so in die Richtung Plagiatssuche, ist natürlich sehr rechenaufwendig. Jedenfall im allgemeinen Fall, wenn man alles mit allem vergleichen will und nicht nur gleiche, sondern auch ähnliche Zeichenfolgen finden will. Mit "find identical content" liefert Google ja einiges dazu.
Schwierig wirds erst, wenn man außer Zahlen und Buchstaben noch sonstige Sonderzeichen suchen muß oder gar die Metazeichen erst maskieren muß. sowas geht mit XProfan und reg. Ausdrücke problemlos und ohne viel Nachdenken : hier 'aufgaben test' rausfiltern : Print Match$("auf..ben.....", "Hausaufgaben test"), %MatchPos, %MatchLen Die punkte stehen für je ein Zeichen. Und die Systemvariablen %MatchPos + %MatchLen geben die gefunden Position und Länge des gefunden Strings an. Hab da schon HTML-Tags rausgefiltert oder auch Uhrzeiten in Form von [19:50] usw. Ist interessant, sowas rauszufiltern, das es viel mächtiger ist, als in Basic Mid$(), Right$(), Left$() oder InStr$() o. ä.
also am besten würde sowas schon mit regulären Ausdrücken gehen, z. B. in ner Skriptsprache wie Perl. ein eigenes Perl Skript, das dann wirklich genau das macht was du willst, wär da optimal. Wenn du C kannst, ist Perl auch nicht schwer ;)
Heinz Brill schrieb: > Schwierig wirds erst, Schwierig nicht. Aber wie Yalu schon anmerkte, er will wohl nicht einfach nach einer bestimmten Zeichenfolge suchen, das wäre ja trivial. Eher so nach dem Motto: Resultat: Datei 1 enthält die Ziffernfolge 3.1415 an Position 123456 und Datei 2 enthält die gleich Folge an Position 654321. Gut, wenn das nur auf Ziffernfolgen beschränkt ist, ist der Aufwand noch nicht so groß. Aber eventuell sollen gleiche Namen, gleiche Fremdwörter usw. gemeldet werden?
MN schrieb: > du suchst die kreuzkorrelation der beiden dateien Ich nicht, und er wohl auch nicht, da die Position der Suchzeichenfolgen ja in jeder Datei beliebug sein kann. Im Prinzip könnte man ja alle trivialen Wörter wie "und" ignorieren, die übrigen Wörter jeder Datei in einen Hash-Index einfügen und dann die beiden Hashes vergleichen. Wenn es denn um Wörter geht, und nicht auch noch um Buchstabengruppen in Worten. Jetzt aber genug gerätselt.
Max B. schrieb: > Verrate uns mal dein Betriebssystem! Was hat das mit dem Betriebssystem zu tun? grep und ähnliches gibt es sogar für Windows.
Paul M. schrieb: > Max B. schrieb: >> Verrate uns mal dein Betriebssystem! > > Was hat das mit dem Betriebssystem zu tun? > grep und ähnliches gibt es sogar für Windows. wenn das so klar ist, warum fragt ein windows-user dann immer solche fragen?
gerd schrieb: > Hallo Cartman, > hab so ein Tool mal eben in Java geschrieben. > Download-Link (incl. Source): http://sebulli.com/download/gZi2tDf.zip > > Aufruf mit: > java -jar gZi2tDf.jar 20 t1.txt t2.txt > > Die 20 ist die Länge, die mindestens übereinstimmen muss, dann folgen > die beiden Textdateien. > > Gruß Gerd Hallo Gerd, Danke, nach genau sowas hab ich gesucht. Nur, bei herkömmlichen Textdateien klapt es wunderbar, bei Unicode leider nicht. Bei den Dateien die ich vergleichen möchte, handelt es sich um verschlüsselte Projektdateien, die eben in Unicode vorliegen.
wie muss man sich eine verschlüsselte datei, also idealerweise zufällig aussehende bytes, in unicode vorstellen?
Cartman schrieb: > Bei den Dateien die ich vergleichen möchte, handelt es sich um > verschlüsselte Projektdateien, die eben in Unicode vorliegen. Logisch klappt das nicht: eine der Grundlagen für eine sinnvolle Verschlüsselung ist, dass gleicher Text nicht zum gleichen Code wird, sonst wäre die Entschlüsselung ziemlich einfach. Anders gesagt, bei verschlüsselten Dateien ergibt eine Vergleichsmethode nur Zufallsfunde, die eben nicht auf gleichen Text hinweisen. Oder wolltest du sagen, du entschlüsselst zuerst beide Dateien?? Gruss Reinhard
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.