sort a list ignoring capitals and german umlauts
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
Normally you can sort database entries within the function contentSelect. But you have to keep in mind, that the result is coming directly from the database. So if the database sorts case sensitive and the umlauts are sorted at the end of the list, you can either reconfigure the database or, if this is not wanted, you can sort the list afterwards.
Example:
<CMS_HEADER>
<CMS_FUNCTION name="contentSelect" resultname="list"><CMS_PARAM name="schema" value="Testschema" /><QUERY entityType="SortMe"><ORDERCRITERIA attribute="text" descending="0" /></QUERY></CMS_FUNCTION></CMS_HEADER>
<h1>database sorted</h1>
$CMS_FOR(element,list)$
$CMS_VALUE(element.text)$<br>
$CMS_END_FOR$
<h1>manual sorted</h1>
$CMS_FOR(element,list.copy.sort(x -> x.text.toLowerCase().replaceAll("ö","oe").replaceAll("ä","ae")))$
$CMS_VALUE(element.text)$<br>
$CMS_END_FOR$
Output:
<h1>database sorted</h1>
Aachen<br>
Ende<br>
Zukunft<br>
anfang<br>
Ärger<br>
Österreich<br>
ähnlich<br><h1>manual sorted</h1>
Aachen<br>
ähnlich<br>
Ärger<br>
anfang<br>
Ende<br>
Österreich<br>
Zukunft<br>
Tested with FS4.2R2
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.