Entwickler-Ecke
Basistechnologien - String mit "Ähnlichkeit" vergleichen
danielf - Di 05.10.10 09:38
Titel: String mit "Ähnlichkeit" vergleichen
Hallo,
ich habe drei Listen mit Firmennamen. Ich möchte nun verschiedene Listen (Obermenge, Untermenge, ...) davon erstellen. Das Problem ist, dass die Namen nicht "gleich" sind.
Zum Beispiel in einer Liste:
A+B Umweltservice GmbH
und in der anderen
A und B Umweltservice
oder
A+B Umweltservice Gesellschaft mit beschränkter Haftung
oder
A+B Umweltservice Gesellschaft mbH
Gibt es im .NET Framework (von mir aus auch 4.0) eine Möglichkeit einen solchen Vergleich zu machen?
Gruß
Daniel
PS: Ich habe einen Beitrag zu
Levenshtein Distance [
http://dotnetperls.com/levenshtein] gefunden. Würde mich trotzdem über weitere Vorschläge freuen.
Th69 - Di 05.10.10 10:02
Die Frage ist, wie ähnlich sind die unterschiedlichen Firmennamen?
Bei der Levenshtein-Distanz wird ja standardmäßig nur buchstabenweise die Abweichung überprüft, evtl. wäre es besser dies wortweise vorzunehmen (vorausgesetzt, es sind keine Rechtschreibfehler drin-).
Und gerade bei deinem Beispiel solltest du dann vllt. eine Erkennung von Alias-Namen vornehmen, d.h. "GmbH", "Gesellschaft" oder "KG", "AG" etc. aussortieren aus dem Vergleich.
Direkt im Framework ist mir keine Methode bekannt, außer eben einen Comparer selbst zu schreiben...
danielf - Di 05.10.10 10:59
Hi,
Danke für die schnelle Antwort.
Wie unterschiedlich die Firmennamen sind weiß ich selbst nicht. Die drei Listen sind in PDF und haben je zwischen 400-800 Einträge. Allerdings nicht wirklich gut strukturiert, so dass es vorkommen kann, dass in einem Firmenname auch Inhaber/Sonstiges drin steht. Selber würde ich es nicht implementieren, da der Programmieraufwand für die Aufgabe sehr gering gehalten werden soll. Deshalb frage ich explizit nach einer vorhandenen .NET Framework/Assembly-Methode.
Ich werde heute Abend den Levenshtein Distance testen und schauen was der rausspuckt. Manuelle Abstimmung ist in Ordnung, da die Listen durch die Umstrukturierung nun auch in Excel bzw. nem kleinen Form problemlos sortiert, gefiltert und gesucht werden kann.
Gruß
PS: Ich lass die Frage bis Morgen mal offen, falls noch jemand was hat :)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!