Bedingte Ausgabe für Export


#1

Ich benötige für eine Exportdatei eine verschachtelte bedingte Ausgabe wie folgt:

Falls %unsyncedlyrics% = "Instrumental" gebe aus: I
Falls %unsyncedlyrics% vorhanden aber nicht "Instrumental" gebe aus: +
Falls %unsyncedlyrics% nicht vorhanden gebe aus: -

Ich weiß zwar, wie man jeweils 2 Alternativen mit $if(,,,) bzw. $if($eql(,),) hinbekommt, versage aber bei der o.a. Aufgabenstellung.


#2

Kannst du vielleicht einen anderen Tagfeldnamen benutzen, weil die Syntax von UNSYNCEDLYRICS "xxx||Text" die Lösung komplizierter macht als es sein müsste?

$if($not(%TEST%),'-',$if($eql(%TEST%,'Instrumental'),'I','+'))

$if($not(%UNSYNCEDLYRICS%),'-',$if($eql($regexp(%UNSYNCEDLYRICS%,'^.+|.|(.)$','$1'),'Instrumental'),'I','+'))

DD.20170122.1135.CET


#3

Aha, so geht das also, vielen Dank. :wink:
Beide Lösungen funktionieren bei mir, wobei ich sobald es um $regex geht, ich zum Verständnis mal wieder ins Kompendium schauen muss. Irgendwie kriege ich sowas kryptisches nicht verinnerlicht.

Du meinst, weil die unterschiedliche Sprachkennzeichnung mit abgefangen werden muss?
Auf die Verwendung des korrekten Tagfeldes bin ich schon wegen anderer Software angewiesen.
Im Prinzip stellt aber die Verwendung von "XXX||Instrumental" für mich kein Problem dar, weil ich prinzipiell nur "XXX" und nicht die anderen Sprachkennzeichen verwende. Es könnten allenfalls einige Pannen dazwischenkommen, die mir durchgerutscht sind.

Wenn ich das richtig verstanden habe, lieferst Du ja mit dem 2. Vorschlag

eine Lösung, die dieses Problem abfängt. Siehst Du bei dieser komplizierteren Lösung irgendwelche Nachteile?


#4

Besondere Nachteile sehe ich eigentlich nicht, vielleicht ist für den komplizierteren Ausdruck die Rechenzeit ein paar Mikrosekunden länger, man muss nur beachten, dass das dementsprechende Syntaxformat im Tagfeld UNSYNCEDLYRICS auch vorhanden ist, sonst liefert der Reguläre Ausdruck vielleicht kein passendes Ergebnis.

DD.20170122.1239.CET