# Namen Vergleichen



## evil_one (21. Mai 2007)

Hallo

ja ich weiß ihr lest das Wort vergleichen und habt gleich die entsprechenden Funktionen die Java bietet im Kopf.
Na mal schauen ob euer wissen mir weiter hilft.

Es geht um Namen und Vornamen die halbwegs ungenau gesucht werden sollen.

Beispiele:

1. Krämer - Kramer
2. Kai - Kaiuwe
3. Berthold - Bertold

zu jeden Fall soll ein "gefunden" zurück geliefert werden.

zu 1. 
    Hier kann ich die Collator Klasse verwenden die mir das "ä" umsetzt. 
    Collator col = Collator.getInstance( Locale.GERMAN ); 
    col.setStrength( Collator.PRIMARY ); 

zu 2.
    indexof sollte hier mein Freund sein.

zu 3.
    hier ist mein Problem. Ich brauche Quasi eine ungenaue Suche.


Wer kennt sich da aus wer hat einen Tip für mich.


----------



## The_S (21. Mai 2007)

Schau dir das mal an

http://de.wikipedia.org/wiki/Levenshtein-Distanz

musst halt noch für dich eine Fehlertolleranz festlegen.


----------



## Murray (21. Mai 2007)

Den dritten Fall könnte man mit einer phonetischen Suche erschlagen; dabei vergleicht man quasi die Schreibweise in Lautschrift, also letzendlich weniger die Buchstaben, als den Klang.

Für die phonetische Suche findet man auch etwas bei Apache: in Commons-Codec gibt es das Package org.apache.commons.codec.language. Mit _Soundex_ würden Bertold und Berthold als gleich erkannt (allerdings ist das ziemlich unscharf und natürlich eiegntlich für die englische Sprache gemacht).


----------



## evil_one (22. Mai 2007)

Ich trage jetzt mal ein wenig zusammen was mir geholfen hat.

www.java-forum.org/de/viewtopic.php?t=28112



*der Beitrag wird immer wieder editiert.


----------



## Guest (22. Mai 2007)

evil_one hat gesagt.:
			
		

> Ich trage jetzt mal ein wenig zusammen was mir geholfen hat.
> 
> www.java-forum.org/de/viewtopic.php?t=2811
> 
> ...



Aha und was hat dir da geholfen?


----------



## Marco13 (22. Mai 2007)

Vielleicht hat bei dem Link am Ende eine 2 gefehlt? :wink:
http://www.java-forum.org/de/viewtopic.php?t=28112


----------



## evil_one (22. Mai 2007)

Marco13 hat gesagt.:
			
		

> Vielleicht hat bei dem Link am Ende eine 2 gefehlt? :wink:
> http://www.java-forum.org/de/viewtopic.php?t=28112



Danke... War ich halt zu schnell beim editieren.


----------

