Hi,
ja alle variationen in der tabelle eintragen. irgendjemand muss ja wissen wie münchen auf russisch oder spanisch genannt wird. so schlau sind computer ja noch nicht von selbst.
Vielleicht schon. Man kann mit MySQL auch soundex-Vergleiche machen.
Ich mache das bei einer sehr rudimentären Fuzzy-Suche, die ich selbst geschrieben habe, so:
1. Suche nach dem exakten Vorkommen. Wenn gefunden, gib aus und Ende.
2. Suche nach dem Soundex-Wert des Suchterms. Wenn gefunden, gib aus und Ende.
3. Suche den Treffer mit der geringsten Abweichung mithilfe des Levenshtein-Algorithmus. Wenn Differenz größer als Schwellwert ist, gib false zurück, ansonsten den Treffer.
Nachteil: Soundex vergleicht ähnlich klingende Worte aufgrund der englischen Aussprache. Für internationale Vergleiche vielleicht nur bedingt einsetzbar, aber schon ein Ansatz. Zur Not einfach Schritt 2 komplett auslassen. Außerdem liefern manche Worte den gleichen Wert zurück, obwohl sie völlig unterschiedlich sind (rest und reset). Zusätzlich kommt noch hinzu, dass bei MySQL und PHP wohl unterschiedliche Soundex-Versionen oder ähnliches eingesetzt werden, so dass teilweise die Soundex-Werte aus MySQL mit den Soundex-Werten desselben Wortes aus PHP nicht mehr übereinstimmen.
Aber probier's doch einfach. ;-)
Der Yeti
Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
Und bin so klug als wie zuvor!
sh:( fo:| ch:? rl:? br:< n4:& ie:( mo:| va:| de:[ zu:) fl:| ss:) ls:< js:|