Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Soundex-Algorithmus für Deutsch (https://www.delphipraxis.net/36037-soundex-algorithmus-fuer-deutsch.html)

MathiasSimmack 16. Dez 2004 10:50

Re: Soundex-Algorithmus für Deutsch
 
Zitat:

Zitat von Kernel32.DLL
Zitat:

Zitat von glkgereon
ß wird lang, ss kurz gesprochen :warn:

naß => nass;
Fluß => Fluss;
Paß => Pass;

Nee, irgendwie sehe ich da keinen sprachlichen unterschied. Ich spreche beide Versionen gleich aus :gruebel:

Einen sprachlichen Unterschied kann man auch nicht sehen sondern bestenfalls hören. Abgesehen davon ist der Vergleich von dir Quark, weil du lediglich die alte und neue Schreibweise gegenüber stellst. Ein besseres Beispiel wäre gewesen:

Masse => Maße

urs.liska 16. Dez 2004 11:03

Re: Soundex-Algorithmus für Deutsch
 
@Stefan Hueg:
Vielen Dank für den Link, aber ich komme da leider nicht weiter. Ich finde etliches unter dem Stichwort phonetischer Code. Aber das sind anscheinend alles Anwendungsbeispiele, also Fälle, bei denen zur Identifizierung eben ein phonetischer Code verwendet wird - aber nicht, wie dieser konstruiert wird.

urs.liska 16. Dez 2004 11:14

Re: Soundex-Algorithmus für Deutsch
 
@jensw_2000
Danke für den Link.
Die Komponente ist gut kommentiert und hilft mir daher weiter. Es ist offensichtlich wirklich so, dass die Konvention, bei der Soundex-Berechnung den ersten Buchstaben einfach zu übernehmen willkürlich ist und zu falschen Ergebnissen führt (so wäre Foto <> Photo).

Was ich jetzt bräuchte, wäre eine einigermaßen erforschte Liste mit Buchstaben-Code-Zuordnungen für das Deutsche.

glkgereon 16. Dez 2004 11:48

Re: Soundex-Algorithmus für Deutsch
 
Zitat:

Zitat von MathiasSimmack
Zitat:

Zitat von Kernel32.DLL
Zitat:

Zitat von glkgereon
ß wird lang, ss kurz gesprochen

naß => nass;
Fluß => Fluss;
Paß => Pass;

Nee, irgendwie sehe ich da keinen sprachlichen unterschied. Ich spreche beide Versionen gleich aus

Einen sprachlichen Unterschied kann man auch nicht sehen sondern bestenfalls hören. Abgesehen davon ist der Vergleich von dir Quark, weil du lediglich die alte und neue Schreibweise gegenüber stellst. Ein besseres Beispiel wäre gewesen:

Masse => Maße

Jo, exakt! :thumb:

naß ist alte Rechtschreibung und sollte damit für solch einen algo net gelten...
wenn, dann müsste es mit langem "a" gesprochen werden...

das beispierl Masse => Maße ist wesentlich besser und korrekt

sakura 16. Dez 2004 11:56

Re: Soundex-Algorithmus für Deutsch
 
Zitat:

Zitat von glkgereon
naß ist alte Rechtschreibung und sollte damit für solch einen algo net gelten...
wenn, dann müsste es mit langem "a" gesprochen werden...

Sehr wohl sollten "naß" und "nass" im SoundEx gleich bewertet werden, da es um Ähnlichkeiten geht. SoundEx wurde ursprünglich entwickelt, um Telefonberatern die Suche in der Kundendatei zu erleichtern. Über eine schlechtere Verbindung kann man nicht einmal M und B unbedingt von einander unterscheiden, also werden diese Buchstaben gleich ausgewertet.

SoundEx teilt alle Buchstaben des Alphabets in ca. 6 Gruppen ein. Jeder Gruppe hat einen Wert, welcher zur Analyse und zum späteren Vergleich herangezogen wird. Kommt ein Wert zwei Mal direkt aufeinander vor, wird der zweite ignoriert. Sagen wir mal, dass "naß" zu "314" wird, dann würde "nass" zu "3144" werden, allerdings wird "44" zu "4" zusammengefasst, daraus folgt, dass auch "nass" zu "314" wird und somit identisch zu "naß" ist ;-)

Jetzt gibt es noch die Möglichkeit den Anfangsbuchstaben beizubehalten, aber das soll für obiges egal sein :zwinker:

...:cat:...

MathiasSimmack 16. Dez 2004 12:02

Re: Soundex-Algorithmus für Deutsch
 
@sakura: Deine Einwände sind allesamt richtig, und keiner bestreitet sie. Ob "naß" oder "nass". In beiden Fällen ist das gleiche gemeint, und es gibt lediglich den Unterschied zwischen alter und neuer Rechtschreibung. Dagegen dürfte "Maße" und "Masse" nicht das gleiche Ergebnis haben, als Beispiel.

Mir persönlich ist das Thema aber ohnehin egal :mrgreen:, mir ging´s nur um den Vergleich von unserem Cornel; von wg "ich sehe den sprachlichen Unterschied nicht". ;)

sakura 16. Dez 2004 12:26

Re: Soundex-Algorithmus für Deutsch
 
Zitat:

Zitat von MathiasSimmack
es gibt lediglich den Unterschied zwischen alter und neuer Rechtschreibung. Dagegen dürfte "Maße" und "Masse" nicht das gleiche Ergebnis haben.

Falsch, auch diese beiden würden das gleiche Ergebnis erzeugen. Es geht beim SoundEx nicht um die Rechtschreibung, im Gegenteil, SoundEx versucht diese vollständig zu egalisieren ;-) Wenn man eine SoundEx Implementation nutzt, welche abschließende Vokale nicht verschluckt (das ist iA Implementierungssache), dann wird "Maße" zu "3141" und "Masse" zu "31441", da "44" zu "4" wird, wird auch "Masse" zu "3141". Somit würde SoundEx "Maße" und "Masse" als ähnlich genug erkennen, um für beide das gleiche Ergebnis zu produzieren.

Nochmal: SoundEx wurde entwickelt, um ähnlich klingende Wörter zu erkennen. Ein Deutscher würde vielleicht den Unterschied zwischen Hrn. Masse und Hrn. Maße erkennen, aber hättest Du einen Kunden der Hr. Funakoshi heißt, würdest Du wohl nicht mehr sicher sein, wie der sich schreibt :roll: Deswegen macht SoundEx im Deutschen auch keine Unterscheidung zw. A,E,I,O,U,Y,J oder der Gruppe D,T,P,B,M,N etc.

...:cat:...

Hansa 16. Dez 2004 12:48

Re: Soundex-Algorithmus für Deutsch
 
Ich will es einmal so verdeutlichen : hier gibts ja wohl keinen, der keine Fremdsprache kann / lernen muß. Dann kennt ihr ja bestimmt diese komische "Lautschrift", oder wie die heißt. Diese komische Schrift, die etwas nach griechisch aussieht. Das kommmt so ziemlich auf Soundex raus. Man hat also für ein Wort eine Übersetzung, wie es gesprochen wird. Soundex geht noch einen Schritt weiter und berücksichtigt auch Ähnlichkeiten.

Beispiel : angenommen GROß geschriebene Sachen würden kurz gesprochen, dann würde "Masse" in dem Beispiel Soundex z.B. wie "mASe" und die Maße wären "mase". Wie die Katze sagt, hat das mit der Schreibweise nichts zu tun. Jedes Wort einer Sprache muß eben nur "übersetzt" werden. Insofern könnte jeder, der dieses "Alphabet" beherrscht einen chinesischen Satz richtig aussprechen, ohne ihn schreiben zu können.

sakura 16. Dez 2004 13:02

Re: Soundex-Algorithmus für Deutsch
 
Zitat:

Zitat von Hansa
Beispiel : angenommen GROß geschriebene Sachen würden kurz gesprochen, dann würde "Masse" in dem Beispiel Soundex z.B. wie "mASe" und die Maße wären "mase".

Mit dem Unterschied, dass sich SoundEx auch nicht für die Länge (das Volumen, etc) eines Buchstaben juckt ;-)

...:cat:...

sakura 16. Dez 2004 14:22

Re: Soundex-Algorithmus für Deutsch
 
Liste der Anhänge anzeigen (Anzahl: 1)
@urs....

Ich habe mal aus unseren Sourcen den SoundEx fürs Deutsche extrahiert. Da wir damals keine angenehme Lösung fürs Deutsche gefunden haben, ist der auf dem Mist eines Kollegen gewachsen, aber recht einfach zu verstehen und funktioniert (zumindest für unsere Kunden) wie gewünscht. :zwinker:

...:cat:...


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 Uhr.
Seite 2 von 3     12 3      

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