Frage zu Textvergleich (performant)
Verfasst: Montag 9. März 2009, 15:12
Hi,
ich bastel zur zeit an einem modul welches 2 beliebige texte (format egal) einliest und den eingelesen Inhalt vergleicht. Soweit so gut nicht sehr schwer.
Doch der knackpunkt ist, dass der vergleich performant sein sollte. Das heist wenn ich zb. Text A (ca 10000 Wörter) mit text B (50000 wörte) auf übereinstimmungen im Inhalt überprüfen möchte dauert das ewig und drei tage (zz 13 Stunden 41min und 12sek ).
So jetzt meine Frage hat sich schon mal wer mit vergleichs algorythmik im bereich texten befasst und kann mir da sinnfolle tips geben wie man am beseten texte auf Inhalt und oder ähnlichen inhalt vergleicht.
Ich mach das zur zeit so, dass ich immer einen satz (wort für wort) aus der kleineren datei in eine liste lade und diese dann auf inhaltlich satz für satz mit dem größeren dokument vergleiche. Sollten mehr als 50% der liste mit dem vergleichssatz übereinstimmen gibt es ein treffer. Sollte keine übereinstimmung vorhanden sein gibt es kein treffer und der nechste satz wird geladen.
Also über hilfe wie das ganze performanter geht wer ich sehr dankbar.
MFG
.exe
ich bastel zur zeit an einem modul welches 2 beliebige texte (format egal) einliest und den eingelesen Inhalt vergleicht. Soweit so gut nicht sehr schwer.
Doch der knackpunkt ist, dass der vergleich performant sein sollte. Das heist wenn ich zb. Text A (ca 10000 Wörter) mit text B (50000 wörte) auf übereinstimmungen im Inhalt überprüfen möchte dauert das ewig und drei tage (zz 13 Stunden 41min und 12sek ).
So jetzt meine Frage hat sich schon mal wer mit vergleichs algorythmik im bereich texten befasst und kann mir da sinnfolle tips geben wie man am beseten texte auf Inhalt und oder ähnlichen inhalt vergleicht.
Ich mach das zur zeit so, dass ich immer einen satz (wort für wort) aus der kleineren datei in eine liste lade und diese dann auf inhaltlich satz für satz mit dem größeren dokument vergleiche. Sollten mehr als 50% der liste mit dem vergleichssatz übereinstimmen gibt es ein treffer. Sollte keine übereinstimmung vorhanden sein gibt es kein treffer und der nechste satz wird geladen.
Also über hilfe wie das ganze performanter geht wer ich sehr dankbar.
MFG
.exe