Bedingt durch einen aktuellen Beitrag habe ich mir die StrUtils
Unit genauer angeguckt und paar Funktionen zu SoundEx darin entdeckt. Gut dass ich sich das entdeckt habe, da ich kurz davor war es selbst zu programmieren (zumindest habe ich schon Material zusammengesucht). Da ich das nur für Namen brauche, reicht es.
Falls einer auch danach sucht...
Delphi-Quellcode:
uses
StrUtils;
procedure TForm1.Button1Click(Sender: TObject);
const
Vergleich: array[Boolean] of String = ('nicht ähnlich', 'ähnlich');
var
s1, s2: String;
begin
s1 := 'Maier';
s2 := 'Müller';
ShowMessage(Format('%s und %s sind %s', [s1, s2, Vergleich[SoundExSimilar(s1, s2)]]));
s1 := 'Maier';
s2 := 'Mayer';
ShowMessage(Format('%s und %s sind %s', [s1, s2, Vergleich[SoundExSimilar(s1, s2)]]));
s1 := 'Maier';
s2 := 'Meyer';
ShowMessage(Format('%s und %s sind %s', [s1, s2, Vergleich[SoundExSimilar(s1, s2)]]));
s1 := 'Karl-Heinz';
s2 := 'Karlheiz';
ShowMessage(Format('%s und %s sind %s', [s1, s2, Vergleich[SoundExSimilar(s1, s2)]]));
//aber auch...
s1 := 'Britney Spears';
s2 := 'Britney Superzicke';
ShowMessage(Format('%s und %s sind %s', [s1, s2, Vergleich[SoundExSimilar(s1, s2)]]));
end;