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.

BuchstabeBeschreibungZahlenwert für Ersetzung
A, E, I, J, O, U, Y (Ä, Ü, Ö)²Vokale und vokalähnliche Buchstaben werden ohne weitere Prüfung ausgetauscht. 0
Hkein Zielwert, wird “gelöscht”
B1
Psofern es nicht von einem H gefolgt wird1
Pwenn von einem H gefolgt3
F, V, W3
L5
G, K, Q4
CIm Anlauf von  A, H, K, L, O, Q, R, U, X4
Cvor A, H, K, O, Q, U, X außer nach S, Z4
Cnach S, Z8
C im Anlaut außer vor A, H, K, L, O, Q, R, U, X8
Cnicht vor A, H, K, O, Q, U, X8
Xnicht nach C, K, Q48
Xnach C, K, Q8
R7
M, N6
S, Z , (ß)²8
D, Tvor C, S, Z8
D, Tnicht vor C, S, Z2
Köln Phonetik Umrechnungstabelle

² 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.

  1. Buchstabenweise Übersetzung von links nach rechts entsprechend der oben angeführten Tabelle.
  2. Entfernen aller mehrfach nebeneinander vorkommenden Ziffern. (Beispiel : 55 wird zu 5)
  3. Entfernen aller Codes „0“ außer am Anfang.(0800 wird zu 08)