Lijstfuncties list-functions
Met lijstfuncties kunt u verzamelingen van waarden bewerken en ermee werken in uw reisexpressies. Deze functies zijn essentieel voor het filteren, sorteren, transformeren en analyseren van arrays en lijsten in uw klantritten.
Gebruik lijstfuncties wanneer u wilt:
- Filter en haal specifieke punten uit inzamelingen uit die op criteria worden gebaseerd ( filter , getListItem )
- Soort en organiseert lijstelementen in het stijgen of dalende orde ( soort )
- Verwijder duplicaten en krijg unieke waarden uit lijsten ( verschillend , separatelyWithNull )
- Controle als de waarden binnen inzamelingen bestaan ( binnen )
- Beperk het aantal punten van een lijst zijn teruggekeerd ( grens )
- Krijg de grootte van een lijst ( listSize ) of transformatielijsten in verschillende formaten ( serializeList )
- Voer vastgestelde verrichtingen als het vinden van gemeenschappelijke elementen tussen lijsten uit ( snijdt )
Lijstfuncties bieden krachtige gereedschappen voor het werken met complexe gegevensstructuren, waardoor geavanceerde gegevensmanipulatie en voorwaardelijke logica op basis van de inhoud van de verzameling mogelijk zijn.
distinct distinct
Geeft als resultaat de verschillende waarden of objecten van een bepaalde lijst. Null-items worden genegeerd.
distinct(<parameters>)| table 0-row-3 1-row-3 2-row-3 | ||
|---|---|---|
| Parameter | Type | Beschrijving |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly of listObject | Te verwerken lijst. Voor listObject moet dit een veldverwijzing zijn. |
| keyAttributeName | string | Deze parameter is optioneel en alleen voor listObject. Wanneer de parameter niet wordt opgegeven, wordt een object als gedupliceerd beschouwd wanneer alle kenmerken dezelfde waarden hebben. Anders wordt een object als gedupliceerd beschouwd wanneer het opgegeven kenmerk dezelfde waarde heeft. |
distinct(<listInteger>)
Retourneert een lijst met gehele getallen.
distinct(<listDecimal>)
Retourneert een lijst met decimalen.
distinct(<listString>)
Retourneert een lijst met tekenreeksen.
distinct(<listDateTimeOnly>)
Keert een lijst van datetimes zonder tijdzone terug te overwegen.
distinct(<listDateTime>)
Retourneert een lijst met datetimes.
distinct(<listDateOnly>)
Retourneert een lijst met datums.
distinct(<listBoolean>)
Retourneert een lijst met laarzen.
distinct(<listDuration>)
Retourneert een lijst met tijdsduur.
distinct(<listObject>)
distinct(<listObject>,<string>)
Retourneert een lijst met objecten.
distinct([10,2,10,null])
Retourneert [10, 2] .
distinctWithNull distinctWithNull
Geeft als resultaat de verschillende waarden of objecten van een bepaalde lijst. Als de lijst ten minste één null-item heeft, wordt een null-waarde weergegeven in de geretourneerde lijst.
distinctWithNull(<parameters>)| table 0-row-3 1-row-3 | ||
|---|---|---|
| Parameter | Type | Beschrijving |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly | Te verwerken lijst. |
distinctWithNull(<listInteger>)
Retourneert een lijst met gehele getallen.
distinctWithNull(<listDecimal>)
Retourneert een lijst met decimalen.
distinctWithNull(<listString>)
Retourneert een lijst met tekenreeksen.
distinctWithNull(<listDateTimeOnly>)
Keert een lijst van datetimes zonder tijdzone terug te overwegen.
distinctWithNull(<listDateTime>)
Retourneert een lijst met datetimes.
distinctWithNull(<listDateOnly>)
Retourneert een lijst met datums.
distinctWithNull(<listBoolean>)
Retourneert een lijst met laarzen.
distinctWithNull(<listDuration>)
Retourneert een lijst met tijdsduur.
distinctWithNull([10,2,10,null])
Keert [ 10, 2 terug, ongeldig ]
Nota: de parameter <listObject> wordt niet gesteund in deze functie.
filter filter
Retourneert een listObject met objecten waarvan het kenmerk key overeenkomt met een van de opgegeven sleutelwaarden.
filter(<parameters>)| table 0-row-3 1-row-3 2-row-3 3-row-3 | ||
|---|---|---|
| Parameter | Type | Beschrijving |
| listToFilter | listObject | lijst met te filteren objecten. Dit moet een veldverwijzing zijn. |
| keyAttributeName | string | kenmerknaam in de objecten van de opgegeven lijst, gebruikt als sleutel voor filteren |
| keyValueList | list | array van sleutelwaarden voor filteren |
filter(listObject, string, listString)
filter(listObject, string, listInteger)
filter(listObject, string, listDecimal)
filter(listObject, string, listDateTime)
filter(listObject, string, listDateTimeOnly)
filter(listObject, string, listDateOnly)
filter(listObject, string, listDuration)
filter(listObject, string, listBoolean)
Retourneert een listObject.
Hier volgt een voorbeeld van een payload die wordt doorgegeven in een binnenkomende gebeurtenis "myevent":
| code language-json |
|---|
|
U kunt de volgende expressie gebruiken:
| code language-json |
|---|
|
Retourneert een listObject met de twee objecten met 'product2' en 'product3' als id.
getListItem getListItem
Retourneert het item van de lijst bij de opgegeven index.
getListItem(<parameters>)| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 | |
|---|---|
| Parameter | Type |
| list | listString |
| list | listBoolean |
| list | listInteger |
| list | listDecimal |
| list | listDuration |
| list | listDateTime |
| list | listDateTimeOnly |
| list | listDateOnly |
| index | integer |
getListItem(<listInteger>,<index>)
Retourneert een geheel getal.
getListItem(<listDecimal>,<index>)
Retourneert een decimaal.
getListItem(<listString>,<index>)
Retourneert een tekenreeks.
getListItem(<listDateTimeOnly>,<index>)
Retourneert een datetime zonder rekening te houden met tijdzone.
getListItem(<listDateTime>,<index>)
Retourneert een datetime.
getListItem(<listDateOnly>,<index>)
Retourneert een lijst met datums.
getListItem(<listBoolean>,<index>)
Retourneert een Booleaanse waarde.
getListItem(<listDuration>,<index>)
Retourneert een duur.
getListItem([10, 2, 3], 1)
Retourneert "2"
getListItem(["A", "B", "C"], 2)
Retourneert "C"
Voorbeelden met een gebeurtenisveld 'event.appVersion' met waarde: "20.45.2.3434"
split(@event{event.appVersion}, "\\.")
Retourneert ["20", "45", "2", "3434"]
getListItem(split(@event{event.appVersion}, "\\."), 0)
Retourneert "20"
in in
Controleert of de waarde van het eerste argument in de lijst voorkomt. De controle wordt uitgevoerd door Gelijk op elke argumentwaarde. De waarde wordt true geretourneerd als de argumentwaarde wordt gevonden, anders false.
Het type van <expression> moet met punten van de lijst aanpassen. Typen items in de lijst moeten, ter herinnering, met elkaar overeenkomen.
in(<parameters>)| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 10-row-2 11-row-2 12-row-2 13-row-2 14-row-2 15-row-2 | |
|---|---|
| Parameter | Type |
| String | String |
| Boolean | Boolean |
| Geheel | Geheel |
| Decimaal | Decimaal |
| Duur | Duur |
| DateTime | DateTime |
| DateTimeOnly | DateTimeOnly |
| Lijst | listString |
| Lijst | listBoolean |
| Lijst | listInteger |
| Lijst | listDecimal |
| Lijst | listDuration |
| Lijst | listDateTime |
| Lijst | listDateTimeOnly |
| Lijst | listDateOnly |
in(<integer>,<listInteger>)
in(<decimal>,<listDecimal>)
in(<string>,<listString>)
in(<boolean>,<listBoolean>)
in(<dateTimeOnly>,<listDateTimeOnly>)
in(<dateTime>,<listDateTime>)
in(<dateOnly>,<listDateOnly>)
in(<duration>,<listDuration>)
Retourneer een booleaanse waarde.
in(4,[4,5,3,4])
Retourneert true.
in(8,[4,5,3,4])
Retourneert false.
in(#{ExperiencePlatform.ProfileFieldGroup.profile.person.gender}, ["male"])
intersect intersect
Retourneert de gemeenschappelijke waarden in de twee invoerlijsten. Als een van de twee lijsten null is, wordt een lege lijst geretourneerd.
intersect(<parameters>)| table 0-row-2 1-row-2 2-row-2 | |
|---|---|
| Parameter | Type |
| lijst 1 | list |
| lijst 2 | list |
intersect(listString,listString): listString
intersect(listDecimal,listDecimal): listDecimal
intersect(listInteger,listInteger): listInteger
intersect(listDateTime,listDateTime): listDateTime
intersect(listDateTimeOnly,listDateTimeOnly): listDateTimeOnly
intersect(listDateOnly,listDateOnly): listDateOnly
intersect(listDuration,listDuration): listDuration
intersect(listBoolean,listBoolean) : listBoolean
Retourneert een lijst.
| code language-json |
|---|
|
Keert [ "sport"terug, "nieuws"]
| code language-json |
|---|
|
Hiermee worden algemene items tussen profielkenmerken en een lijst met categorieën geretourneerd.
| code language-json |
|---|
|
Retourneert algemene items tussen profielkenmerken en opgegeven gebeurtenisveld.
limiet limit
Retourneert de eerste of laatste N-elementen van een lijst.
limit(<parameters>)| table 0-row-3 1-row-3 2-row-3 3-row-3 | ||
|---|---|---|
| Parameter | Type | Beschrijving |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly of listObject | Te overwegen lijst. Voor listObject moet dit een veldverwijzing zijn. |
| numberOfItems | integer | Aantal items dat moet worden geretourneerd uit de opgegeven lijst. |
| firstOrLastItems | boolean | Deze parameter is optioneel (standaard true). true retourneert de eerste items. false retourneert de laatste items. |
limit(<listString>,<integer>)
limit(<listString>,<integer>,<boolean>)
Retourneert een lijst met tekenreeksen.
limit(<listInteger>,<integer>)
limit(<listInteger>,<integer>,<boolean>)
Retourneert een lijst met gehele getallen.
limit(<listDecimal>,<integer>)
limit(<listDecimal>,<integer>,<boolean>)
Retourneert een lijst met decimalen.
limit(<listBoolean>,<integer>)
limit(<listBoolean>,<integer>,<boolean>)
Retourneert een lijst met laarzen.
limit(<listDateOnly>,<integer>)
limit(<listDateOnly>,<integer>,<boolean>)
Retourneert een lijst met datums.
limit(<listDateTimeOnly>,<integer>)
limit(<listDateTimeOnly>,<integer>,<boolean>)
Keert een lijst van datetimes zonder tijdzone terug te overwegen.
limit(<listDateTime>,integer>)
limit(<listDateTime>,<integer>,<boolean>)
Retourneert een lijst met datetimes.
limit(<listDuration>,<integer>)
limit(<listDuration>,<integer>,<boolean>)
Retourneert een lijst met tijdsduur.
limit(<listObject>,<integer>)
limit(<listObject>,<integer>,<boolean>)
Retourneert een lijst met objecten.
limit(["A", "B", "C", "D", "E"], 3)
Retourneert ["A","B","C"] .
limit(["A", "B", "C", "D", "E"], 3, false)
Retourneert ["C","D","E"] .
listSize listSize
Telt het aantal elementen in de lijst.
listSize(<parameters>)| table 0-row-3 1-row-3 | ||
|---|---|---|
| Parameter | Type | Beschrijving |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly of listObject | Te verwerken lijst. Voor listObject moet dit een veldverwijzing zijn. Een listObject kan geen null-object bevatten. |
listSize(<listInteger>)
listSize(<listDecimal>)
listSize(<listString>)
listSize(<listBoolean>)
listSize(<listDateTimeOnly>)
listSize(<listDateTime>)
listSize(<listDateOnly>)
listSize(<listDuration>)
Retourneer een geheel getal.
listSize(<listObject>)
listSize([10,2,3])
Retourneert 3.
listSize(@event{my_event.productListItems})
Retourneert het aantal objecten in de opgegeven array met objecten (type listObject).
serializeList serializeList
Hiermee wordt een bepaalde lijst (elk type behalve listObject) omgezet in een tekenreeks.
serializeList(<parameters>)| table 0-row-3 1-row-3 2-row-3 3-row-3 | ||
|---|---|---|
| Parameter | Type | Beschrijving |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly | Lijst die moet worden omgezet in een tekenreeks. |
| scheidingsteken | string | Scheidingsteken tussen elk lijstelement in de uitvoertekenreeks. |
| addQuotes | boolean | Deze parameter geeft aan of elk element in de uitvoertekenreeks aanhalingstekens moet bevatten (true) of niet (false). |
serializeList(<listInteger>,<string>,<boolean>)
serializeList(<listDecimal>,<string>,<boolean>)
serializeList(<listString>,<string>,<boolean>)
serializeList(<listBoolean>,<string>,<boolean>)
serializeList(<listDateTimeOnly>,<string>,<boolean>)
serializeList(<listDateTime>,<string>,<boolean>)
serializeList(<listDateOnly>,<string>,<boolean>)
serializeList(<listDuration>,<string>,<boolean>)
Retourneer een tekenreeks.
serializeList(["Hello","World"], " ", false)
Retourneert "Hello World".
serializeList(["Hello", "World"], ",", true)
Retourneert ""Hello","World"".
sort sort
Hiermee sorteert u een lijst met waarden of objecten in natuurlijke volgorde.
sort(<parameters>)| table 0-row-3 1-row-3 2-row-3 3-row-3 | ||
|---|---|---|
| Parameter | Type | Beschrijving |
| listToSort | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly of listObject | Te sorteren lijst. Voor listObject moet dit een veldverwijzing zijn. |
| keyAttributeName | string | Deze parameter is alleen voor listObject. De kenmerknaam in de objecten in de lijst wordt gebruikt als sleutel voor sorteren. |
| sortingOrder | boolean | Oplopend (true) of aflopend (false) |
sort(<listInteger>,<boolean>)
Retourneert een lijst met gehele getallen.
sort(<listDecimal>,<boolean>)
Retourneert een lijst met decimalen.
sort(<listString>,<boolean>)
Retourneert een lijst met tekenreeksen.
sort(<listDateTimeOnly>,<boolean>)
Keert een lijst van datetimes zonder tijdzone terug te overwegen.
sort(<listDateTime>,<boolean>)
Retourneert een lijst met datetimes.
sort(<listDateOnly>,<boolean>)
Retourneert een lijst met datums.
sort(<listBoolean>,<boolean>)
Retourneert een lijst met laarzen.
sort(<listObject>,<string>,<boolean>)
Retourneert een lijst met objecten.
sort(["A", "C", "B"], true)
Retourneert ["A","B","C"] .
sort([1, 3, 2], false)
Retourneert [3, 2, 1] .
sort(@event{my_event.productListItems}, "SKU", true)
Retourneert het listObject dat is geordend door het SKU-kenmerk (oplopende volgorde)