Phonetikalgorithmen Teil 1 Einleitung und Köln-Phonetik
Erwartete Lesezeit: 3 minuten
Phonetik wird für die Suche nach ähnlich klingenden Wörtern genutzt. Hierbei wird ein phonetischer “Hashwert” erstellt und gesucht. Vorteil einer phonetischen Suche ist das man damit Rechtschreibfehler und Unklarheiten in der Schreibweise kompensieren kann.
In diesem Beitrag wollen wir uns mal drei der bekanntesten Algorithmen genauer ansehen.
Aber zuerst einmal zu den gemeinsamen Eigenschaften jedes Algorithmus.
Jeder der hier erwähnten Algorithmen basiert auf einer Umrechnung bzw. Ersetzung von Buchstaben in Zahlen nach einem festgelegten Regelwerk. Diese “Hashes” werden dann für such und Vergleichsoperationen genutzt.
Köln Phonetik / Cologne-Phonetic
Die Kölner Phonetik ist auf den deutschen Sprachraum ausgelegt und daher bestens hierzulande zu nutzen.
Buchstabe | Beschreibung | Zahlenwert für Ersetzung |
---|---|---|
A, E, I, J, O, U, Y (Ä, Ü, Ö)² | Vokale und vokalähnliche Buchstaben werden ohne weitere Prüfung ausgetauscht. | 0 |
H | kein Zielwert, wird “gelöscht” | |
B | 1 | |
P | sofern es nicht von einem H gefolgt wird | 1 |
P | wenn von einem H gefolgt | 3 |
F, V, W | 3 | |
L | 5 | |
G, K, Q | 4 | |
C | Im Anlauf von A, H, K, L, O, Q, R, U, X | 4 |
C | vor A, H, K, O, Q, U, X außer nach S, Z | 4 |
C | nach S, Z | 8 |
C | im Anlaut außer vor A, H, K, L, O, Q, R, U, X | 8 |
C | nicht vor A, H, K, O, Q, U, X | 8 |
X | nicht nach C, K, Q | 48 |
X | nach C, K, Q | 8 |
R | 7 | |
M, N | 6 | |
S, Z , (ß)² | 8 | |
D, T | vor C, S, Z | 8 |
D, T | nicht vor C, S, Z | 2 |
² Deutsche Umlaute können ebenfalls berücksichtigt werden. Ä , Ö und Ü werden dann als Vokal behandelt und erhalten den Wert 0. Das ß wird der Gruppe S,Z zugerechnet
Klein- und Großbuchstaben werden gleichbehandelt und alle Sonderzeichen ignoriert.
Der Bindestrich hat nur Relevanz für die Bestimmung ob ein Wort in einem Wert oder in zwei Werte getrennt berechnet wird.
Ablauf einer Übersetzung.
- Buchstabenweise Übersetzung von links nach rechts entsprechend der oben angeführten Tabelle.
- Entfernen aller mehrfach nebeneinander vorkommenden Ziffern. (Beispiel : 55 wird zu 5)
- Entfernen aller Codes „0“ außer am Anfang.(0800 wird zu 08)