bestimmten Wert aus Auflistung herausfiltern & ausgeben lassen

Hallo Lukas,


ich hoffe es geht dir gut! :)

Ich benötige noch einmal deine Hilfe.


ich habe das Problem, dass ich alle Bilder-Urls kommasepariert in einer Zelle aus unserem System erhalte. Es geht sich um den bestehenden Flow Plenty-Tradebyte. Diesen muss ich jetzt ergänzen.


Ich müsste anhand von URL-Bezeichnungen einen Filter generieren im mapper generieren.


http://beispiel.de/bild1-abc1.jpg,http://beispiel.de/bild1-abc2.jpg,http://beispiel.de/bild1-abc3.jpg,http://beispiel.de/bild1-abc4.jpg


Jetzt möchte ich nur die Url haben welche den wert "abc3" enthält.

Ich habe es schon mit ifelse und contain versucht, aber ich verstehe noch nicht wie ich die betroffene Url als Wert ausgegeben bekomme.


Kannst du mir erklären, wie ich sowas umsetzte?


Grüße

Christoph

Hallo Christoph,


probiere mal folgendes:

<#assign bilder = "Beispiel.de/abc1,Beispiel.de/abc2,Besipiel.de/abc3">
<#list bilder?split(',') as b>
<#if b?contains('abc3')>
${b}<#sep>,
</#if>
</#list>


Was macht nun der ganze Ausdruck?

Erst erstellst du dir eine Variable die deinen String an Bildurls beinhalt mit <#assign>,

Anschließend splitest du die Liste nach dem Separator, der die einzelnen Werte trennt um daraus ein Array von Werten zu erhalten. Dieses Array wird dann durch gelistet und jeder Wert, wird mit der if-Bedingung darauf geprüft ob er 'abc3' beinhaltet. Wenn ja, wird der Wert ausgegeben, wenn nicht wird er einfach ignoriert.

Das <#sep> dient dazu, dass nach jeder Ausgabe wieder ein ',' Komma gesetzt wird, für den Fall du hast mehrere URLs die ausgegeben werden.


Viele Grüße,

Lukas

Hi Lukas


super - hat funktioniert - Dank dir


LG

Christoph