Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Suche in Db nach Ähnlichkeit (https://www.delphipraxis.net/10303-suche-db-nach-aehnlichkeit.html)

czapie 15. Okt 2003 16:38


Suche in Db nach Ähnlichkeit
 
Hallo,

ich habe das Problem, das ich eine Sucher realisieren muß/möchte die auch ähnliche Werte erfaßt wie der eigentliche Suchbegriff.
Ich konstruiere:
in einem DB-Feld steht der irgenwo der Wert Baimstraße.
Dieser Wert soll nun auch ausgegeben werden wenn der Benutzer nache
Bainsraße, Beimstraße oder bspw. auch Baimstrasse sucht.
Nun möchte ich aber nicht die gesamte Datenbank auslesen, und dann die Ergebnisse nochmals mit Hilfe von Stringvergleich-Funktionen filtern, sondern es sollen gleich die passenden Ergebnisse
rausgegeben werden.
Das ganze soll in diesem Fall mit php/mysql umgesetzt werden.
Ich erwarte keine direkten Lösungen, aber ich wäre sehr froh über ein paar denkanstöße, auch unabhängig von Db und Programmiersprache.
Danke,
Czapie.

Niko 15. Okt 2003 17:07

Re: Suche in Db nach Ähnlichkeit
 
Das was du suchst nennt sich Bei Google suchenSoundEx-Funktion. Mit diesem Begriff solltest du eigentlich auch fertige Algorithmen finden.

czapie 15. Okt 2003 17:16

Re: Suche in Db nach Ähnlichkeit
 
hi Niko,

ja auf den ersten Blick sieht das so aus, als wenn das das ist was ich suche,
vielen Dank,

Czapie.

Niko 15. Okt 2003 17:29

Re: Suche in Db nach Ähnlichkeit
 
Es gibt auch noch das Bei Google suchenDamerau Levenstein-Maß, um Ähnlichkeiten zwischen zwei Wörtern zu bewerten. Es soll teilweise besser sein, als eine einfache SoundEx-Funktion. Übrigens stellen manche DB-Server einen SoundEx-Vergleich auch als SQL-Anweisung zur Verfügung.

czapie 15. Okt 2003 17:34

Re: Suche in Db nach Ähnlichkeit
 
Ja,
ich habe gerade nachgelesen, in meinem Falle kann ich soundex benutzen,
vielen Dank,
czapie.

APP 15. Okt 2003 17:41

Re: Suche in Db nach Ähnlichkeit
 
Hallo czapie,

soweit ich weiß, ist der "klassische" soundex-Algorithmus für
den englischsprachigen Raum optimiert und liefert daher mit
deutschen Wörtern u.u. fehlerhafte/ungenügende Ergebnisse.

czapie 15. Okt 2003 17:47

Re: Suche in Db nach Ähnlichkeit
 
Hi APP,

wenn dies der Fall sein sollte, hast du Lösungsvorschläge?
Aber erst einmal danke für den Hinweis.
Ich vertraue sehr auf "PHP4 Grundlagen und Profiwissen" von Jörg Krause erschienen im HANSER-Verlag, dort ist die Funktion ziemlich problemlos dargestellt.
Naja, wenn ich es fertig hab werd ich mich melden, und euch von den Ergebnissen/Elebnissen berichten,
bis später,
Czapie.

APP 15. Okt 2003 18:07

Re: Suche in Db nach Ähnlichkeit
 
Hallo czapie,

ich hab' mal a bisserl gesucht für Dich :mrgreen: :

Den Algo gibt es angebl. schon seit 1880-1925 je nach Quelle :roteyes:

Zitat:

Die Namenindizes zu den Passagierlisten aus Baltimore sind in dem in den USA gebräuchlichen "SOUNDEX CODING SYSTEM" archiviert.
Damit können Namen unterschiedlicher Schreibweise, die aber ähnlich klingen (z.B. Schmidt und Smith) gefunden werden.
Link dazu: http://www.uni-oldenburg.de/nausa/soundex.htm

Du mußt nur noch die Tabelle für deutsch anpassen!
(eine französische Anpassung habe ich gefunden: http://www.chez.com/algor/soundex/soundex.htm )


alternativ:
c't 25/99, S. 252: Phonetische Textumwandlung
http://www.heise.de/ct/99/25/252/default.shtml mit Soße, auch für komm. Nutzung!

czapie 15. Okt 2003 23:04

Re: Suche in Db nach Ähnlichkeit
 
wow,
ist ja echt lustig, eher Bemerkenswert.
Da sieht man mal wo bestimmte Sachen herrühren.
Danke APP,
wie gesagt, ich lass von mir hören.

czapie 22. Okt 2003 18:18

Re: Suche in Db nach Ähnlichkeit
 
Hi Leute,

kurze Vorabinfo.
Ich habe mir zu Ohren kommen lassen, dass die Funktion soundex() von php und die Funktion SOUNDEx von sql, nicht nach dem exakt gleichen Algorithmus arbeiten, und damit auch teilweise andere Ergebnisse liefern, also denkt dran, ich wäre beinahe auf die Nase gefallen,
Czapie.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:03 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz