Sven Rautenberg: Bubblesort

Beitrag lesen

Moin!

das was er sortieren soll steht in ein array. is ja klar.
in diesen array stehen namen von Strasse. Die möchte ich nach namen ordnen. Dabei macht er ein Fehler und zwar setzt die namen die mit mit 'Ä',usw. also Umlaute am ende.

Hat da jemand eine Lösung?

Der ASCII-Code eines Umlauts ist halt ein anderer, als der des A - folglich kommen die Umlaute nach hinten.

Du wirst vermutlich eine eigene Vergleichsfunktion basteln müssen, welche eine Normalisierung der enthaltenen Zeichen durchführt - in diesem Fall zum Zwecke des Stringvergleichs vorher alle Umlaute mit den zugehörigen Grundformen ersetzt, dann vergleicht und das Resultat zurückgibt.

usort() wäre eine gut geeignete Funktion dafür, da kannst du eine eigene Vergleichfunktion angeben.

- Sven Rautenberg