Silbentrennung (Hyphenation) Lösung mit PHP

Silbentrennung in PHP für die deutsche Sprache?

Bevor man direkt loslegt und darauf Los programmiert erstmal ein wenig Lesestoff um überhaupt ein Überblick zum Thema zu bekommen. In englischer Sprache wird Die Silbentrennung übrigens  „hyphenation“ genannt.

Also fangen wir mal an mit etwas Hintergrundwissen

Folgende Themen betrachten wir etwas genauer:

  • Hyphenation – Silbentrennung
  • Stemming – Stammformreduktion, Normalformenreduktion
  • Inflection – Flexion
  • Pronunciation – Aussprache

Algorithmen, Methoden und Vorgehensweisen:

  • Porter Stemmer
  • Frank Liang, Word Hy-phen-a-tion by Com-put-er Algorithmus  – [PDF]
  • Org_Heigl_Hyphenator

Fertige Lösungen

Tests

Wie teste ich das ganze?

Zum testen gibt es mehrere Möglichkeiten. Was man auf jeden Fall benötigt sind Wörter von denen die richtige Trennung bekannt ist. Diese werden als Referenzliste verwendet um die Genauigkeit festzustellen. Problematisch dabei ist, dass man schon ziemlich viele Referenz Trennungen benötigt damit die Genauigkeit der Genauigkeit (gnn..) genau ist. (Hilfe!!).

Natürlich ist das Aufbauen einer solchen Liste ein ziemlicher Aufwand einige tausend Datensätze benötigt man schon. Zum Glück gibt es zahlreiche Projekte die sich mit diesen Thema beschäftigen. Eine Referenzliste für Trennungen die ziemlich gut ist z.B. diese hier: A database of German words with hyphenation information. Projektseite,  GitHub

Diese Quelle beinhaltet eine Sammlung von Wörter mit der Angabe an welchen Stellen das Wort richtig getrennt wird. Die Trennungen sind soweit ziemlich genau und von der Anzahl her mit 460.548 ziemlich umfangreich..

Vorgehensweise

Im grunde ist der Aufwand für die implementierung und realisieren eines Algorithmus ziemlich Aufwendig. Daher sollte man zuerst mal testen wie die Performance ist wenn nach einem Wort in der Liste gesucht wird, wenn diese in einer MySQL Datenbank gespeichert wird.

….todo…

Die ersten Experimente

Fazit

…todo…

Fertige Lösungen

Eine fertige Lösung wurde mir von einem Leser zugesendet die sich sehr Interessant anhört. Die Lösung findet man auf dem blog.beran-solutions.de unter dem Artikel: Worttrennung mit PHP. Vielen Dank…..

Folgende Artikel könnten auch interessieren

2 Gedanken zu „Silbentrennung (Hyphenation) Lösung mit PHP

  1. Pingback: Worttrennung mit PHP – Der Blog eines Datenreisenden!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *