anregung: erweiterung von asort.exe

Thomas Berger ThB.com at t-online.de
Di Sep 19 15:59:09 CEST 2000


Klaus Lehmann schrieb am 7.9.:

> bitte denken Sie mal mit mir ;-)
> 
> ich fände es wunderbar, wenn asort.exe folgendes bewältigen könnte:
> (oder hat hier das jemand (WER) bereits mal angeregt?)
> 
> a. eine sortierung nach einer frei-einstellbaren buchstabenfolge.
>    z.b. eben NICHT die allseits bekannte ascii-zeichliste
>         sondern (dieses benötige ich z.Zt dringend ;-)
>         eine sortierung nach dt. sortier-alphabet
>         also die grossen umlaute nicht nach dem Z, sondern aufgelöst(?)
>         und wohleinsortiert in A,Ä,O,Ö,U,Ü. was ist mit dem esszett?
>         was ist mit z.B. skandinavischen sonderzeichen?
> 
> b. eine sortierung, die keine Rücksicht auf gross/klein/schreibung
>         nimmt. also kleina, dann grossb, dann kleinc usw
>         (nett wäre es, wenn a. enthalten wärte)
> 
> c. vielleicht kann man ja auch eigene sortierregeln definieren,
>         diese wären dann in einer ini (oder apt ;-) formuliert.
> 
> wäre es nicht eine bombige idee, wenn asort auch obiges könnte?
> was sagen SIE?


Sortieren ist nicht so einfach. Unicode definiert
etwa eine topologische Sortierung (d.h. es genuegt
nicht, zeichenweise zu vergleichen, bis ein 
Unterschied da ist, sondern man muss mehrfach
mit anderen Kriterien vorne starten, wenn man
am Ende ohne Ergebnis dagestanden ist):

1. Vergleich der Grundbuchstaben ohne Unterschied 
   von Gross- und Kleinschreibung

2. Vergleich von Akzenten (diese haben jeweils
   einen eigenen, sekundaeren Sortierwert)

3. Vergleich von Gross-/Kleinschreibung

(aus dem gedaechtnis rekonstruiert, Details unter

http://www.unicode.org/unicode/reports/tr10/

Dies regelt eigentlich nur das Vergleichen
von Zeichenketten, eine Universelle Sortiertabelle
alleine fuer 1. wird es kaum geben).


Dazu kommen dann nationalsprachliche Finessen,
etwa:

"u im Deutschen hat "ue" als "Grundbuchstaben",
in (den meisten) anderen Sprachen nicht.

Ll im Spanischen ist ein eigener Grundbuchstabe

~n im Spanischen ditto.

Der Kleinbuchstabe zu I ohne Punkt ist kleines
i mit Punkt, ausser im tuerkischen.

Mir ist nicht klar, ob in allen Sprachen
einheitlich Buchstaben mit Gravis vor bzw. 
nach denselben Buchstaben mit Akut sortieren.


Dazu kommen bibliothekarische Tuecken:

Meier, G"otz kann auch durchaus vor
Meier, Goetz sortieren, wenn naemlich das eine
ein Verfasser ist (Komma hat unendlich niedrigen
Sortierwert) und das andere ein Sachtitel
(Komma hat ueberhaupt keinen Sortierwert).

Ansonsten ist korrektes bibliothekarisches
Sortierung die Uebungsaufgabe Nr. 17 auf Seite 
7 von D.E. Knuth's "Sorting and Searching", 
2. Aufl. 1998.

HTH
Thomas Berger





Mehr Informationen über die Mailingliste Allegro