Questions & Answers

fadtke
I'm new here

Sortierung mit Text und Zahlen

Hallo Community,

Ich wollte mal fragen, ob vielleicht Jemand dieses folgende Problem mit FirstSpirit gelรถst hat?

Es geht um die Sortierung Objekten, speziell in dem Fall  von Objekten aus einem contentSelect, die nach Anzeigenamen sortiert werden sollen. Dieser enthรคlt nun mit Text und Zahlen:

Bsp.: { "text 1", "text 2", ... "text 10"}

Die sortierte Ausgabe sieht ja dann wie folgt aus:

- text 1

- text 10

- text 2

...

Ich mรถchte nun gerne, dass die 10 erst nach der 2 ausgegen wird.

Dies ist wahrscheinlich ein bekanntes Problem, aber gibt es dafรผr auch eine bekannte Lรถsung?

Danke und viele GrรผรŸe

Marcel

0 Kudos
3 Replies
feddersen
Community Manager

Sie kรถnnen รผber ein Skript einen eigenen Sortieralgorithmus implementieren, der die Eintrรคge passend sortiert. Ggf. ist auch ein entsprechender Lambda-Ausruck schon ausreichend.

fadtke
I'm new here

Hallo Community,

wir haben das Problem jetzt erstmal gelรถst.

Bei der รœbergabe der Funktion an die Sortierung haben wir mit einer RegEx die Zahlen verรคndert:

$CMS_FOR(myList, list.sort(x -> x.Name.toLowerCase().replaceAll( "(\b[0-9][a-z]*\b)", "0$1")))$

Das hat das Problem erstmal behoben.

Ich hatte nur die Hoffnung es gibt ggf. etwas adรคquates zum java.tex.Collator.

Danke und viele GrรผรŸe

java.text.Collator kรถnnen Sie ohne Probleme innerhalb eines Skriptes verwenden, welches sie รผber CMS_RENDER in der Vorlage aufrufen kรถnnen.

0 Kudos

Type a product name