# $sort(x,sep)

**URL:** https://community.mp3tag.de/t/sort-x-sep/12319
**Category:** Vorschläge
**Created:** [July 24, 2011, 9:19am UTC](https://community.mp3tag.de/t/sort-x-sep/12319 "2011-07-24T09:19:16Z")
**Posts on this page:** 11
**Page:** 1

<div class="post-metadata">

### Author: ![chrizoo](https://community.mp3tag.de/user_avatar/community.mp3tag.de/chrizoo/32/233_2.png) [@chrizoo](https://community.mp3tag.de/u/chrizoo)
#### Post date: [July 24, 2011, 9:19am UTC](https://community.mp3tag.de/t/sort-x-sep/12319/1 "2011-07-24T09:19:16Z")

</div>

**$sort(x,sep)**

_Funktion:_ 

sortiert die durch "sep" getrennten Textbausteine des Strings "x"  
alphabetisch

_Beispiel:_ 

%genre% = "rock / pop / easy listening"  
$sort(%genre%, / ) = "easy listening / pop / rock"

_Anwendungsmöglichkeiten:_ 

zB. ermöglicht Löschen wiederholter Werte (pop / rock / rock) mittels $regexp, uvm.

Um auch die Rückwärtssortierung (Z-A) zu implementieren, könnte entweder eine Invers-Funktion (zB $sortz oder $zsort) oder ein 3. Parameter verwendet werden: $sort(x,sep,a-z) bzw. $sort(x,sep,z-a)

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [July 24, 2011, 11:59am UTC](https://community.mp3tag.de/t/sort-x-sep/12319/2 "2011-07-24T11:59:42Z")

</div>

> [@chrizoo](#):
>
> _Beispiel:_   
> %genre% = "rock / pop / easy listening"  
> $sort(%genre%, / ) = "easy listening / pop / rock"

Bei der Funktion möchte ich folgendes zu Bedenken geben:  
Trennzeichen wie / innerhalb von Tags werden von unterschiedlichen Programmen unterschiedlich ausgewertet und ggf. als Tag-Trenner interpretiert, so dass eine alphabetische Sortierung innerhalb des Feldes sich nicht im Abspieler bemerkbar machen würde, da jeder Eintrag zwischen den Trennzeichen als Einzeleintrag gewertet würde.  
Worin soll der tiefere Sinn des Anwendens einer Systematik auf eine unsystematische Sprache liegen?  
Bei Genre kann ich mir übrigens nicht vorstellen, dass ein Stück wirklich gleichzeitig rock, pop und easy listening ist.  
Discogs führt mehrere Genre-Label ein und die Anhänger von Jazz Funk knirschen wohl bei Funk Jazz mit den Zähnen - die Reihenfolge transportiert einen gewollten Sinn, in dem das zuerst genannte häufig als das Übergeordnete angesehen wird.  
Wäre dann eine Sortierung innerhalb anderer Felder sinnvoll und so häufig anzuwenden, dass eine eigene Funktion dafür erzeugt werden müsste?  
ZZ TOP würde zu TOP ZZ oder Colourbox M/A/R/R/S zu A Colourbox M R R S? Eher nicht.  
"Er hat ein knallrotes Gummiboot" zu "Ein Er Gummiboot hat knallrotes?" macht es schwierig, den Titel zu finden.  
McCartney, Lennon zu Lennon, MacCartney - nun ja.

OK, ich will mich nicht gegen Innovationen sperren. Also lehne ich das Prinzip nicht ab. Nur die Nutzanwendung will mir nicht einfallen. Also enthalte ich mich der Stimme.

---

<div class="post-metadata">

### Author: ![chrizoo](https://community.mp3tag.de/user_avatar/community.mp3tag.de/chrizoo/32/233_2.png) [@chrizoo](https://community.mp3tag.de/u/chrizoo)
#### Post date: [July 24, 2011, 12:34pm UTC](https://community.mp3tag.de/t/sort-x-sep/12319/3 "2011-07-24T12:34:33Z")

</div>

Bei dir hab ich schon wirklich langsam das Gefühl du suchst _absichtlich_ Haare in der Suppe (siehe auch andere Threads).

_Beispiel 1:_ _"... kann ich mir übrigens nicht vorstellen, dass ein Stück wirklich gleichzeitig rock, pop und easy listening ist"_ --\> es geht hier um Syntax. Nicht um Musikrichtungen. Das war nur ein Beispiel. Du hättest auch "Äpfel / Birnen / Bananen" als Beispiel nehmen können. Aber jemand, der ein Haar in der Suppe finden möchte, diskutiert halt sinnloswerweise off-topic über Musikrichtungen und wo deren Grenzen sind - ein Streitthema das so alt ist wie die Musikgeschichte selbst und _nie_ gelöst werden wird.

_Beispiel 2:_ _absichtliche_ Benutzerfehler: "ZZ TOP würde zu TOP ZZ oder Colourbox M/A/R/R/S zu A Colourbox M R R S?" --\> natürlich nicht. In meinem Beispiel bleiben beide Künstlernamen unverändert. Der Separator ist " / " (Leerzeichen+Slash+Leerzeichen), diese Bedingung wird in keinem deiner Beispiele erfüllt. Wenn du absichtlich falsche Separatoren verwendest, die zu sinnlosen Ergebnissen führen, dann ist nicht die Funktion schlecht, höchstens deren zweckentfremdete Benutzung.

So, die Diskussion mit dir ist mir zu mühsam. Konstruktive Kritik finde ich ja gut, aber absurdes An-Den-Haaren-Herbeiziehen-Von-Nicht-Existierenden-Problemen eher weniger.

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [July 24, 2011, 1:21pm UTC](https://community.mp3tag.de/t/sort-x-sep/12319/4 "2011-07-24T13:21:48Z")

</div>

Ich versuche doch, die Ideen aufzunehmen. Nur konnte ich bisher noch nicht die tiefere Einsicht gewinnen, wozu so eine Funktion mit Sortieren gebraucht werden kann.  
Also OK, so eine Reihung von Genres ist es anscheinend nicht - das soll nur den Separator verdeutlichen.  
Warum nun als Separator das Blank unzulässig sein soll? Als Gedankenspiel war eben in meinen Beispieln bei den anderen Feldern das Blank - müsste doch bei einem wahlfreien Separator auch zulässig sein, oder?  
Also wende ich (im Geiste) die Funktion an und überlege, welchen Nutzen ich davon habe. Und dabei sind mir die genannten Beispiele eingefallen. Du findest, dass diese Beispiele

> [@](#):
>
> zweckentfremdete Benutzung

ist. Dann zeig doch mal ein Beispiel, das nicht abstrakt eine Syntax demonstriert, sondern eines, an dem der Wert des Vorschlags zu erkennen ist.  
Im Moment kann ich mir absolut kein Feld vorstellen, das in sich alphabetisch sortiert werden müsste und dass dieses Sortieren so häufig vorkommt, dass ich eine eigene Funktion dafür bräuchte.

---

<div class="post-metadata">

### Author: ![chrizoo](https://community.mp3tag.de/user_avatar/community.mp3tag.de/chrizoo/32/233_2.png) [@chrizoo](https://community.mp3tag.de/u/chrizoo)
#### Post date: [July 24, 2011, 4:02pm UTC](https://community.mp3tag.de/t/sort-x-sep/12319/5 "2011-07-24T16:02:40Z")

</div>

> [@ohrenkino](#):
>
> wozu so eine Funktion mit Sortieren [?]

siehe **zB** OP

Hast du übrigens auch so mit Florian herumdiskutiert, als er die anderen String-Funktionen wie zB $reverse(x) und $strrchr(x,y) in sein Programm einbaute ?? Wenn nein, warum nur hier an dieser Stelle? Kennst du persönlich auch praktische Anwendungen für $reverse?

> [@ohrenkino](#):
>
> wozu sortieren ? ... Blank ist zulässig ... Als Gedankenspiel... im Geiste ... überlege, welchen Nutzen ich ... kann ich mir absolut kein Feld vorstellen

Zusammenfassung deines Postings (soweit man Unklarheit zusammenfassen kann):

Du nimmst Text, den du überhaupt NICHT sortieren willst, dann wählst du die Parameter für die Funktion so unpassend, dass ein sinnloses Ergebnis herauskommt und anhand dessen versuchst du die Funktion an sich als sinnlos darzustellen. Meisterleistung.

Wozu postest du hier überhaupt? Wenn alle 10000+ Anwender, denen gerade zufällig für eine Funktion persönlich kein Anwendungsbeispiel einfallen, dann wäre das Forum voll von solchen sinnlosen Diskussionen.

Ich breche hier die Diskussion mit dir ab, was du machst ist Trolling in Reinkultur.

PS: Bist du auch so unermüdlich und hartnäckig falls ich einmal Hilfe brauche, oder eigentlich nur beim Suchen virtueller Probleme damit konstruktive Ideen mit größerer Wahrscheinlichkeit im Papierkübel landen?

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [July 24, 2011, 4:30pm UTC](https://community.mp3tag.de/t/sort-x-sep/12319/6 "2011-07-24T16:30:05Z")

</div>

> [@chrizoo](#):
>
> $reverse(x) und $strrchr(x,y) in sein Programm einbaute ??

für $reverse gibt es einen Thread:  
[Is it possible to revert order of chars in tags?](https://community.mp3tag.de/t/12059/1)

für strstr gibt es etliche Threads, ich verwende die Funktion auch mit Wonne - und das würde ich eben mit der Sort-Funktion auch gern tun.

Leider antwortest du nicht auf die Fragen zu einer ähnlich nützlichen Anwendung wie die beiden Beispiele oben.

> [@chrizoo](#):
>
> Du nimmst Text, den du überhaupt NICHT sortieren willst, dann wählst du die Parameter für die Funktion so unpassend, dass ein sinnloses Ergebnis herauskommt und anhand dessen versuchst du die Funktion an sich als sinnlos darzustellen. Meisterleistung.

Genau das ist mein Problem: ich kann mir keine passende Anwendung für das Sortieren in einem Feld vorstellen. Ist die Funktion vielleicht wirklich sinnlos?

> [@chrizoo](#):
>
> Ich breche hier die Diskussion mit dir ab.

Das ist schade. Ich bisher die Erfahrung gemacht, dass die Themen konkret und hilfreich bis zur Lösung diskutiert werden.  
Ich bin ernsthaft auf deine Idee eingegangen, ich habe deine daraus folgenden Fragen beantwortet - leider gibt es bisher von dir keine Antwort auf meine Fragen. Du hast dir doch bestimmt einen echten Zugewinn vorgestellt, als du die neue Funktion vorgeschlagen hast. An welchem echten (und nicht nur theoretischen) Verwendungszweck kann man den Zugewinn erkennen?

---

<div class="post-metadata">

### Author: ![chrizoo](https://community.mp3tag.de/user_avatar/community.mp3tag.de/chrizoo/32/233_2.png) [@chrizoo](https://community.mp3tag.de/u/chrizoo)
#### Post date: [July 24, 2011, 8:40pm UTC](https://community.mp3tag.de/t/sort-x-sep/12319/7 "2011-07-24T20:40:44Z")

</div>

> [@ohrenkino](#):
>
> Leider antwortest du nicht auf die Fragen zu einer ähnlich nützlichen Anwendung wie die beiden Beispiele oben.

Natürlich habe ich geantwortet. Wenn du meine Postings gar nicht liest (#5: 1. Zeile, #1: 7.Zeile) dann kann ich auch nichts tun.

> [@chrizoo](#):
>
> _Anwendungsmöglichkeiten:_ 
> 
> **zB.** ermöglicht Löschen wiederholter Werte (pop / rock / rock) mittels $regexp, uvm.

That's a pretty good reason I'd say.  
ironischerweise hast du das an anderer Stelle selbst herausgefunden, ohrenkino:

> [@Duplikate](https://community.mp3tag.de/t/duplikate/9536/1):
>
> eine alphabetische Sortierung listet gleiche Titel nacheinander

... vergesslich?

> [@ohrenkino](#):
>
> ich habe deine daraus folgenden Fragen beantwortet

in #5 sind massenweise unbeantwortete Fragen an dich

> [@ohrenkino](#):
>
> ich kann mir keine passende Anwendung vorstellen. Ist die Funktion vielleicht wirklich sinnlos?

Was ist der Sinn einer String-Funktion? Was ist der Sinn des Lebens?

Dass du MP3Tag überhaupt verwendest ist für mich das größte Wunder überhaupt. Von Dir hätte ich eine Meldung erwartet wie "Tags ... was macht das denn für einen SINN? Klingt damit die Musik denn besser??"

String-Funktionen sind natürlich nützlich, auch wenn du sagst, dein Vorstellungsvermögen reicht dafür nicht aus und auch wenn du meine Postings nicht liest. Daher führe ich diese sinnlose Diskussion nicht weiter, aber vielleicht liest ...

> [@ohrenkino](#):
>
> für $reverse gibt es einen Thread, ... für $strstr auch

... du ja die Postings von anderen Usern, für die diese Funktion ebenfalls Sinn machte und hilfreich gewesen wäre:

> [@](#):
>
> [Posting, das ich gerade nicht wiederfinde]

..... **+**

> [@Suggestion - Sort function for multivalue tag-fields](https://community.mp3tag.de/t/suggestion-sort-function-for-multivalue-tag-fields/10743/1):
>
> I think that Mp3tag needs a sort function (ascending, descending) for sorting a multivalue meta tag-field.

..... **+**

> [@Alphebetizing Genre Tag. Possible?](https://community.mp3tag.de/t/alphebetizing-genre-tag-possible/10492/1):
>
> Hi Guys,  
> I am trying to sort my music collection by Genre.  
> In My mp3's, I use multiple words in a single line genre tag to describe my tracks.  
> say for example, I have a fast track that is in a breakbeat style, but is a remix of a hip-hop song.  
> The genre I would use would be like this: Breakbeat Hip-Hop Uptempo  
> My question is, is it possible to create an action which would ensure the words in the genre tag are in alphabetical order?  
> So that if i had tagged the aforementioned song as: Uptempo Breakbeat Hip-Hop, it would rearrange the words to read Breakbeat Hip-Hop Uptempo?  
> Thanks for any help you guys can give me.
> 
> Regards,  
> Lil Vito

---

<div class="post-metadata">

### Author: ![DetlevD](https://community.mp3tag.de/user_avatar/community.mp3tag.de/detlevd/32/123_2.png) [@DetlevD](https://community.mp3tag.de/u/DetlevD)
#### Post date: [July 25, 2011, 3:28am UTC](https://community.mp3tag.de/t/sort-x-sep/12319/8 "2011-07-25T03:28:21Z")

</div>

> [@chrizoo](#):
>
> **$sort(x,sep)**
> 
> _Funktion:_ 
> 
> sortiert die durch "sep" getrennten Textbausteine des Strings "x" ...

Siehe auch:  
Suggestion - Sort function for multivalue tag-fields  
[Suggestion - Sort function for multivalue tag-fields](https://community.mp3tag.de/t/10743/1)

DD.20110725.0730.CEST

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [July 25, 2011, 5:20am UTC](https://community.mp3tag.de/t/sort-x-sep/12319/9 "2011-07-25T05:20:54Z")

</div>

> [@DetlevD](#):
>
> Siehe auch:  
> Suggestion - Sort function for multivalue tag-fields  
> [Suggestion - Sort function for multivalue tag-fields](https://community.mp3tag.de/t/10743/1)
> 
> DD.20110725.0730.CEST

Ach, endlich mal eine Antwort, wie ich sie liebe: kurz und knackig.

Und da ich ja gerne dazulerne: der verwiesene Eintrag stammt von 2010 - die Funktion ist bisher nicht implementiert. Ist das eine schmerzlich vermisste Lücke? Gibt es wirklich (häufige) Anwendungsfälle?  
Und diese ganze Fragerei meinerseits nicht um etwas abzuqualifizieren, sondern um die Dringlichkeit zu ermitteln und so vielleicht die Reihenfolge in Florians Wunschliste zu ändern.

---

<div class="post-metadata">

### Author: ![chrizoo](https://community.mp3tag.de/user_avatar/community.mp3tag.de/chrizoo/32/233_2.png) [@chrizoo](https://community.mp3tag.de/u/chrizoo)
#### Post date: [July 25, 2011, 11:09am UTC](https://community.mp3tag.de/t/sort-x-sep/12319/10 "2011-07-25T11:09:25Z")

</div>

> [@ohrenkino](#):
>
> Ach, endlich mal eine Antwort, wie ich sie liebe: kurz und knackig.

Im kurzen und knackigen Posting [#1](https://community.mp3tag.de/t/12319/1) in diesem Thread steht ALLES bzw. noch mehr als drüben. Lesen müsste man es halt.

---

<div class="post-metadata">

### Author: ![chrizoo](https://community.mp3tag.de/user_avatar/community.mp3tag.de/chrizoo/32/233_2.png) [@chrizoo](https://community.mp3tag.de/u/chrizoo)
#### Post date: [July 25, 2011, 11:10am UTC](https://community.mp3tag.de/t/sort-x-sep/12319/11 "2011-07-25T11:10:46Z")

</div>

> [@DetlevD](#):
>
> Siehe auch:  
> [Suggestion - Sort function for multivalue tag-fields](https://community.mp3tag.de/t/10743/1)

Danke, Detlev!
