Toewijzingsfuncties van Data Prep
De functies van de Prep van gegevens kunnen worden gebruikt om waarden te berekenen en te berekenen die op wat in brongebieden zijn ingegaan.
Velden
Een veldnaam kan elke geldige id zijn: een reeks van Unicode-letters en -cijfers met een onbeperkte lengte, te beginnen met een letter, het dollarteken ($
) of het onderstrepingsteken (_
). De namen van variabelen zijn ook hoofdlettergevoelig.
Als deze conventie niet wordt gevolgd door een veldnaam, moet de veldnaam worden teruggekoppeld met ${}
. Als de veldnaam bijvoorbeeld "Voornaam" of "Voornaam" is, moet de naam als ${First Name}
respectievelijk ${First\.Name}
worden omwikkeld.
.
) heeft, moet u backslash (\
) gebruiken om speciale karakters te ontsnappen. Voor meer informatie, lees de gids op het ontsnapen speciale karakters.Als een gebiedsnaam om het even welke van de volgende gereserveerde sleutelwoorden is, moet het met ${}{}
worden verpakt:
new, mod, or, break, var, lt, for, false, while, eq, gt, div, not, null, continue, else, and, ne, true, le, if, ge, return, _errors, do, function, empty, size
Daarnaast bevatten gereserveerde trefwoorden ook alle mapfuncties die op deze pagina worden vermeld.
Gegevens binnen subvelden zijn toegankelijk met behulp van de puntnotatie. Als er bijvoorbeeld een name
-object is, gebruikt u name.firstName
om toegang te krijgen tot het firstName
-veld.
Lijst met functies
In de volgende tabellen worden alle ondersteunde toewijzingsfuncties weergegeven, inclusief voorbeeldexpressies en de resulterende uitvoer.
Reeksfuncties string
- STRING: De tekenreeksen die worden samengevoegd.
"Hi, there!"
\
worden ontsnapt: +, ?, ^, |, ., [, (, {, ), *, $, \
als u veelvoudige karakters als afbakening omvat, zal het scheidingsteken als multi-karakterscheidingsteken worden behandeld.- STRING: Vereiste het koord dat moet worden gesplitst.
- REGEX: Facultatieve De regelmatige uitdrukking die kan worden gebruikt om het koord te verdelen.
["Hi,", "there"]
- INPUT: Vereiste het koord dat wordt gezocht.
- SUBSTRING: Vereiste substring die binnen het koord wordt gezocht.
- START_POSITION: Facultatieve de plaats van waar te beginnen in het koord te kijken.
- VOORVALLEN: Facultatieve het nde voorkomen om van de beginpositie te zoeken. Standaard is dit 1.
- INPUT: Vereiste het inputkoord.
- TO_FIND: Vereiste het koord om binnen de input omhoog te kijken.
- TO_REPLACE: Vereiste het koord dat de waarde binnen "TO_FIND"zal vervangen.
- INPUT: Vereiste het inputkoord.
- START_INDEX: Vereiste de index van het inputkoord waar substring begint.
- LENGTH: Vereiste de lengte van substring.
case
- INPUT: Vereiste het koord dat in kleine letters zal worden omgezet.
geval ("HeLLo")
ucase
- INPUT: Vereiste het koord dat in hoofdletters zal worden omgezet.
ucase ("HeLLo")
\
worden ontsnapt: \
. Als u veelvoudige afbakeningen omvat, zal het koord op om het even welk van de afbakenaars huidig in het koord verdelen. Nota: Deze functie keert slechts niet-krachteloze indexen van het koord, ongeacht de aanwezigheid van separator terug. Wanneer alle indexen, inclusief null, in de resulterende array zijn vereist, gebruikt u in plaats daarvan de functie "explode".- INPUT: Vereiste het inputkoord dat zal worden gesplitst.
- SEPARATOR: Vereist het koord dat wordt gebruikt om de input te verdelen.
["Hello", "world"]
- SEPARATOR: Vereiste het koord dat zal worden gebruikt om zich bij de voorwerpen aan te sluiten.
- OBJECTEN: Vereiste een serie van koorden die zullen worden aangesloten.
join(SEPARATOR, [OBJECTS])
join(" ", to_array(true, "Hello", "world"))
- INPUT: Vereiste het koord dat uit zal worden opgevuld. Deze tekenreeks kan null zijn.
- COUNT: Vereiste de grootte van het uit te vullen koord.
- PADDING: Vereiste het koord om de input met te stoten. Als deze null of leeg is, wordt deze behandeld als één spatie.
- INPUT: Vereiste het koord dat uit zal worden opgevuld. Deze tekenreeks kan null zijn.
- COUNT: Vereiste de grootte van het uit te vullen koord.
- PADDING: Vereiste het koord om de input met te stoten. Als deze null of leeg is, wordt deze behandeld als één spatie.
- STRING: Vereiste het koord u de eerste "n"karakters voor krijgt.
- COUNT: Vereiste de "n"karakters u van het koord wilt krijgen.
- STRING: Vereiste het koord u de laatste "n"karakters voor krijgt.
- COUNT: Vereiste de "n"karakters u van het koord wilt krijgen.
- STRING: Vereiste het koord u whitespace van wilt verwijderen.
- STRING: Vereiste het koord u whitespace van wilt verwijderen.
- STRING: Vereiste het koord u whitespace van wilt verwijderen.
- STRING1: Vereiste het eerste koord u wilt vergelijken.
- STRING2: Vereiste het tweede koord u wilt vergelijken.
- STRING1: Vereiste het eerste koord u wilt vergelijken.
- STRING2: Vereiste het tweede koord u wilt vergelijken.
Gewone expressiefuncties
- STRING: Vereiste het koord dat u de groepen uit haalt.
- REGEX: Vereiste de regelmatige uitdrukking die u de groep wilt aanpassen.
- STRING: Vereiste het koord dat u controleert past de regelmatige uitdrukking aan.
- REGEX: Vereiste de regelmatige uitdrukking die u tegen vergelijkt.
Hashingfuncties hashing
- INPUT: Vereiste de gewone tekst om worden gehakt.
- CHARSET: Facultatieve De naam van de karakterreeks. Mogelijke waarden zijn UTF-8, UTF-16, ISO-8859-1 en US-ASCII.
- INPUT: Vereiste de gewone tekst om worden gehakt.
- CHARSET: Facultatieve De naam van de karakterreeks. Mogelijke waarden zijn UTF-8, UTF-16, ISO-8859-1 en US-ASCII.
- INPUT: Vereiste de gewone tekst om worden gehakt.
- CHARSET: Facultatieve De naam van de karakterreeks. Mogelijke waarden zijn UTF-8, UTF-16, ISO-8859-1 en US-ASCII.
- INPUT: Vereiste de gewone tekst om worden gehakt.
- CHARSET: Facultatieve De naam van de karakterreeks. Mogelijke waarden zijn UTF-8, UTF-16, ISO-8859-1 en US-ASCII.
- INPUT: Vereiste de gewone tekst om worden gehakt.
- CHARSET: Facultatieve De naam van de karakterreeks. Mogelijke waarden zijn UTF-8, UTF-16, ISO-8859-1 en US-ASCII.
URL-functies url
- URL: Vereiste URL waarvan het protocol moet worden gehaald.
- URL: Vereiste URL waarvan de gastheer moet worden gehaald.
- URL: Vereiste URL waarvan de haven moet worden gehaald.
- URL: Vereiste URL waarvan de weg moet worden gehaald.
- FULL_PATH: Facultatieve een booleaanse waarde die bepaalt als de volledige weg is teruggekeerd. Indien ingesteld op false, wordt alleen het einde van het pad geretourneerd.
- URL: Vereiste URL die u probeert om het vraagkoord van te krijgen.
- ANCHOR: Vereiste bepaalt wat met het anker in het vraagkoord zal worden gedaan. Kan één van drie waarden zijn: "behouden", "verwijderen" of "toevoegen".
als de waarde "behoudt"is, zal het anker aan de teruggekeerde waarde in bijlage zijn.
als de waarde "verwijdert"is, zal het anker uit de teruggekeerde waarde worden verwijderd.
als de waarde "toevoegt"is, zal het anker als afzonderlijke waarde zijn teruggekeerd.
get_url_query_str ("foo://example.com:8042 /over/daar?name= ferret#nose", "remove")
get get_url_query_str ("foo://example.com 2:04/over/daar?=daar ferret#nose", "append")
{"name": "ferret#nose"}
{"name": "ferret"}
{"name": "ferret", "_anchor_": "nose"}
- URL: Vereiste input URL met speciale karakters die u met karakters wilt vervangen of coderen ASCII.
- URL: Vereiste input URL met karakters ASCII die u in speciale karakters wilt decoderen.
Datum- en tijdfuncties date-and-time
date
functie kan in de datumsectie van de gegeven worden gevonden behandelende gids.2021-10-26T10:10:24Z
- DATUM: Vereiste de inputdatum, als voorwerp ZonedDateTime, die u wilt formatteren.
- FORMAT: Vereiste het formaat dat u de datum wilt worden veranderd in.
yyyy-MM-dd HH:mm:ss
")2019-10-23 11:24:35
- TIMESTAMP: Vereiste timestamp u wilt formatteren. Dit wordt geschreven in milliseconden.
- FORMAT: Vereiste het formaat dat u timestamp wilt worden.
yyyy-MM-dd'T'HH:mm:ss.SSSX
")2019-10-23T11:24:35.000Z
- DATUM: Vereiste het koord dat de datum vertegenwoordigt.
- FORMAT: Vereiste het koord dat het formaat van de brondatum vertegenwoordigt.Nota: dit vertegenwoordigt niet het formaat u het datumkoord in wilt omzetten.
- DEFAULT_DATE: Vereiste de teruggekeerde standaarddatum, als de verstrekte datum ongeldig is.
2019-10-23T11:24:00Z
- DATUM: Vereiste het koord dat de datum vertegenwoordigt.
- FORMAT: Vereiste het koord dat het formaat van de brondatum vertegenwoordigt.Nota: dit vertegenwoordigt niet het formaat u het datumkoord in wilt omzetten.
2019-10-23T11:24:00Z
- DATUM: Vereiste het koord dat de datum vertegenwoordigt.
"jaar"
"jjjj"
"jj"
"kwart"
"qq"
"q"
"maand"
"mm"
"m"
"dag-van-jaar"
"dag"
"y"
"dag"
3} "dd"
"d"
"week"
"ww"
"w"
"weekdag"
"dw"
"w"
"uur"
"hh"
"hh24"
"hh12"
"minuut"
"mi"
"n"
"seconde"
"ss"
"s"
"millisecond"
"SSS"
- COMPONENT: Vereiste een koord dat het deel van de datum vertegenwoordigt.
- DATUM: Vereiste de datum, in een standaardformaat.
"jaar"
"jjjj"
"yy"
"maand"
"mm"
"m"
"dag"
"dd"
"d"
"uur"
"hh"
"minuut"
"mi"
"n"
"seconde"
"ss"
"s"
- COMPONENT: Vereiste een koord dat het deel van de datum vertegenwoordigt.
- WAARDE: Vereiste de waarde voor de component voor een bepaalde datum te plaatsen.
- DATUM: Vereiste de datum, in een standaardformaat.
- JAAR: Vereiste het jaar, die in vier cijfers wordt geschreven.
- MAAND: vereiste de maand. De toegestane waarden zijn 1 tot 12.
- DAG: Vereiste de dag. De toegestane waarden zijn 1 tot 31.
- HOUR: Vereiste het uur. De toegestane waarden zijn 0 tot 23.
- MINUUT: Vereiste de minuut. De toegestane waarden zijn 0 tot en met 59.
- NANOSECOND: Vereiste de nanotweede waarden. De toegestane waarden zijn 0 tot en met 999999999.
- TIMEZONE: Vereiste de timezone voor de datumtijd.
2019-10-17T11:55:12Z
- DATUM: Vereiste de datum die u probeert om te zetten.
zone_date_to_utc​(2019-10-17T11:55:​12 PST
2019-10-17T19:55:12Z
- DATUM: Vereiste de datum die u probeert om te zetten.
- ZONE: Vereiste de timezone die u probeert om de datum in om te zetten.
zone_date_to_zone(now(), "Europe/Paris")
2021-10-26T15:43:59Z
Hiërarchieën - Objecten objects
- INPUT: Vereiste het voorwerp dat u probeert te controleren is leeg.
is_empty([1, null, 2, 3])
- INPUT: Vereiste een groepering van sleutel en serieparen.
arrays_to_objects('sku', explode("id1|id2", '\\|'), 'price', [22.5,14.35])
[{ "sku": "id1", "price": 22.5 }, { "sku": "id2", "price": 14.35 }]
- INPUT: Vereiste een vlakke lijst van sleutel/waardeparen.
{"firstName": "John", "lastName": "Doe"}
- STRING: Vereiste het koord dat wordt ontleed om een voorwerp tot stand te brengen.
- VALUE_DELIMITER: Facultatieve afbakening die een gebied van de waarde scheidt. Het standaardscheidingsteken is
:
. - FIELD_DELIMITER: Facultatieve afbakening die de paren van de gebiedswaarde scheidt. Het standaardscheidingsteken is
,
.
get()
functie samen met str_to_object()
gebruiken om waarden voor de sleutels in het koord terug te winnen.- Voorbeeld 1: str_to_object("firstName - John ; lastName - ; - 123 345 7890", "-", ";")
- Voorbeeld 2: str_to_object("firstName - John ; lastName - ; phone - 123 456 7890", "-", ";").get("firstName")
- Voorbeeld 1:
{"firstName": "John", "lastName": "Doe", "phone": "123 456 7890"}
- Voorbeeld 2: "John"
is_set()
functie.- INPUT: Vereiste de weg die moet worden gecontroleerd als het binnen de brongegevens bestaat.
null
. Dit zou moeten worden gebruikt wanneer u niet het gebied aan het doelschema wilt kopiëren.null
- OBJECT: Vereiste het voorwerp waar de sleutels van zullen worden gehaald.
["book1", "book2"]
- STRING: Vereiste het koord dat u wilt ontleden.
- SLEUTEL: Vereiste de sleutel waarvoor de waarde moet worden gehaald.
- VALUE_DELIMITER: Vereiste Scheidingsteken dat het gebied en de waarde scheidt. Wanneer een
null
of een lege tekenreeks wordt opgegeven, is deze waarde:
. - FIELD_DELIMITER: Facultatieve afbakening die gebied en waardeparen scheidt. Wanneer een
null
of een lege tekenreeks wordt opgegeven, is deze waarde,
.
- MAP: Vereiste de gegevens van de inputkaart.
- SLEUTEL: Vereiste de sleutel kan één enkel koord of een koordserie zijn. Als een ander primitief type (data/number) wordt opgegeven, wordt het behandeld als een tekenreeks.
- MAP: Vereiste de gegevens van de inputkaart
- SLEUTEL: Vereiste de sleutel kan één enkel koord of een koordserie zijn. Als een ander primitief type (data/number) wordt opgegeven, wordt het behandeld als een tekenreeks.
- SLEUTEL: Vereiste Sleutels moeten een koord zijn. Als er andere primitieve waarden zijn opgegeven, zoals gehele getallen of datums, worden deze automatisch omgezet in tekenreeksen en worden ze als tekenreeksen behandeld.
- ANY_TYPE: Vereiste verwijst naar om het even welk gesteund XDM gegevenstype behalve Kaarten.
- OBJECT: Vereiste U kunt een inkomende voorwerp of objecten serie verstrekken en aan een attribuut binnen het voorwerp als sleutel richten.
- OBJECT: Vereiste U kunt een inkomende voorwerp of objecten serie verstrekken en aan een attribuut binnen het voorwerp als sleutel richten.
Voor informatie over de eigenschap van het objecten exemplaar, zie hieronder de sectie 🔗.
Hiërarchieën - arrays arrays
- INPUT: Vereiste de serie u het eerste niet-krachteloze voorwerp van wilt vinden.
- INPUT: Vereiste de serie u het eerste element van wilt vinden.
- INPUT: Vereiste de serie u het laatste element van wilt vinden.
- ARRAY: Vereiste de serie die u elementen aan toevoegt.
- WAARDEN: de elementen die u aan de array wilt toevoegen.
- ARRAY: Vereiste de serie die u elementen aan toevoegt.
- WAARDEN: de array(en) die u aan de bovenliggende array wilt toevoegen.
- INCLUDE_NULLS: Vereiste een booleaanse waarde om erop te wijzen al dan niet om nul in de reactieserie te omvatten.
- WAARDEN: Vereiste de elementen die in een serie moeten worden omgezet.
[1, 2, 3]
- INPUT: Vereiste het voorwerp dat u probeert om de grootte van te vinden.
size_of([1, 2, 3, 4])
- ARRAY: Vereiste de serie om de serie in het Profiel toe te voegen.
upsert_array_append([123, 456])
- ARRAY: Vereiste de serie om de serie in het Profiel te vervangen.
upsert_array_replace([123, 456], 1)
- SEPARATOR: Vereiste de separator die wordt gebruikt om zich bij de elementen in de serie aan te sluiten.
- ARRAY: Vereiste de serie die (na afvlakken) worden aangesloten.
array_to_string(";", ["Hello", "world"])
- ARRAY: Vereiste de serie om worden gefiltreerd
- PREDICATE: Vereiste voorspelt dat op elk element van de bepaalde serie moet worden toegepast.
filterArray([5, -6, 0, 7], x -> x > 0)
- ARRAY: Vereiste de serie om worden getransformeerd.
- PREDICATE: Vereiste voorspelt dat op elk element van de bepaalde serie moet worden toegepast.
transformArray([5, 6, 7], x -> x + 1)
- ARRAY: Vereiste de serie om worden afgevlakt.
Hiërarchieën - Toewijzen map
- INPUT: Vereiste de objecten serie u het eerste niet-krachteloze voorwerp van wilt vinden.
- SLEUTEL: Vereiste de sleutel moet een gebiedsnaam in de objecten serie en het voorwerp als waarde zijn.
- INPUT: Vereiste de objecten serie u het eerste niet-krachteloze voorwerp van wilt vinden.
"{line1 : \"345 park ave\",line2: \"bldg 2\",City : \"san jose\",State : \"CA\",type: \"office\"}"
"{\"firstName\" : \"John\", \"lastName\": \"Doe\"}"
Logische operatoren logical-operators
- SLEUTEL: Vereiste de sleutel die moet worden aangepast.
- OPTIONS: Vereiste een samengevoegde serie van sleutel/waardeparen. Optioneel kan een standaardwaarde aan het einde worden geplaatst.
als stateCode gegeven "pa"is, "Pennsylvania".
als stateCode niet het volgende aanpast, "n.v.t.".
- UITDRUKKING: Vereiste de booleaanse uitdrukking die wordt geëvalueerd.
- TRUE_VALUE: Vereiste de waarde die is teruggekeerd als de uitdrukking aan waar evalueert.
- FALSE_VALUE: Vereiste de waarde die is teruggekeerd als de uitdrukking aan vals evalueert.
Samenvoeging aggregation
- OPTIONS: Vereiste Één of meerdere voorwerpen die met elkaar kunnen worden vergeleken.
- OPTIONS: Vereiste Één of meerdere voorwerpen die met elkaar kunnen worden vergeleken.
Typeomzettingen type-conversions
- STRING: Vereiste het koord dat in een BigInteger moet worden omgezet.
- STRING: Vereiste het koord dat in een Dubbel moet worden omgezet.
- TEKENREEKS: Vereiste het koord dat in een Float moet worden omgezet.
- TEKENREEKS: Vereiste het koord dat in een Geheel moet worden omgezet.
JSON-functies json
- STRING: vereiste het koord JSON om worden gedeserialiseerd.
Bijzondere verrichtingen special-operations
guid
guid ()
guid ()
c7016dc7-3163-43f7-afc7-2e1c9c20633
fpid_to_ecid
- STRING: Vereiste het koord FPID dat in ECID moet worden omgezet.
fpid_to_ecid(STRING)
fpid_to_ecid("4ed70bee-b654-420a-a3fd-b58b6b65e991")
"28880788470263023831040523038280731744"
Functies van gebruikersagent user-agent
Om het even welke gebruikersagent functies in de lijst hieronder kunnen één van beiden van de volgende waarden terugkeren:
- Telefoon - Een mobiel apparaat met een klein scherm (gewoonlijk < 7 inch)
- Mobiel - Een mobiel apparaat dat nog moet worden geïdentificeerd. Dit mobiele apparaat kan een eReader, een tablet, een telefoon, een horloge, enz. zijn.
Voor meer informatie over de waarden van het apparatengebied, te lezen gelieve de lijst van de waarden van het apparatengebiedin bijlage van dit document.
- USER_AGENT: Vereiste het koord van de gebruikersagent.
- USER_AGENT: Vereiste het koord van de gebruikersagent.
- USER_AGENT: Vereiste het koord van de gebruikersagent.
- USER_AGENT: Vereiste het koord van de gebruikersagent.
- USER_AGENT: Vereiste het koord van de gebruikersagent.
- USER_AGENT: Vereiste het koord van de gebruikersagent.
- USER_AGENT: Vereiste het koord van de gebruikersagent.
- USER_AGENT: Vereiste het koord van de gebruikersagent.
Analysefuncties analytics
- EVENT_STRING: Vereiste het komma-gescheiden de gebeurteniskoord van de Analyse.
- EVENT_NAME: Vereiste de gebeurtenisnaam om uit te halen en identiteitskaart van.
- EVENT_STRING: Vereiste het komma-gescheiden de gebeurteniskoord van de Analyse.
- EVENT_NAME: Vereiste de gebeurtenisnaam om een waarde uit te halen.
- PRODUCTS_STRING: Vereiste het koord van de Producten van de Analyse.
- PRODUCTS_STRING: Vereiste het koord van de Producten van de Analyse.
- PRODUCTS_STRING: Vereiste het koord van de Producten van de Analyse.
- PRODUCTS_STRING: Vereiste het koord van de Producten van de Analyse.
- PRODUCTS_STRING: Vereiste het koord van de Producten van de Analyse.
- EVENT_NAME: Vereiste de gebeurtenisnaam om waarden uit te halen.
- PRODUCTS_STRING: Vereiste het koord van de Producten van de Analyse.
- EVAR_NAME: Vereiste de naam van eVar om te halen.
Objectkopie object-copy
U kunt de functie voor het kopiëren van objecten gebruiken om automatisch kenmerken van een object te kopiëren zonder wijzigingen aan te brengen in de toewijzing. Als uw brongegevens bijvoorbeeld een structuur hebben van:
address{
line1: 4191 Ridgebrook Way,
city: San Jose,
state: California
}
en een XDM-structuur van:
addr{
addrLine1: 4191 Ridgebrook Way,
city: San Jose,
state: California
}
Vervolgens wordt de toewijzing:
address -> addr
address.line1 -> addr.addrLine1
In het bovenstaande voorbeeld worden de kenmerken city
en state
ook automatisch opgenomen bij uitvoering, omdat het object address
wordt toegewezen aan addr
. Als u een line2
-kenmerk in de XDM-structuur moet maken en uw invoergegevens ook een line2
in het address
-object bevatten, wordt dit kenmerk automatisch opgenomen zonder dat u de toewijzing handmatig hoeft te wijzigen.
Om ervoor te zorgen dat de automatische mapping werkt, moet aan de volgende voorwaarden worden voldaan:
- Objecten op hoofdniveau moeten worden toegewezen;
- Nieuwe kenmerken moeten zijn gemaakt in het XDM-schema.
- Nieuwe kenmerken moeten overeenkomende namen hebben in het bronschema en het XDM-schema.
Als aan om het even welke voorwaarden niet wordt voldaan, dan moet u het bronschema aan het XDM schema manueel in kaart brengen gebruikend gegevens prep.
Bijlage
Hieronder vindt u aanvullende informatie over het gebruik van Data Prep-toewijzingsfuncties
Speciale tekens special-characters
In de onderstaande tabel ziet u een lijst met gereserveerde tekens en de bijbehorende gecodeerde tekens.
Waarden voor apparaatvelden device-field-values
In de onderstaande tabel wordt een lijst met apparaatveldwaarden en de bijbehorende beschrijvingen weergegeven.
useragents
die zijn gewijzigd door een anonymiisatiesoftware.useragents
die geen informatie over het apparaat bevatten.useragent
-tekenreeks.Codevoorbeelden code-samples
map_get_values map-get-values
code language-json |
---|
|
map_has_keys map_has_keys
code language-json |
---|
|
add_to_map add_to_map
code language-json |
---|
|
object_to_map object_to_map
Syntaxis 1
code language-json |
---|
|
Syntaxis 2
code language-json |
---|
|
Syntaxis 3
code language-json |
---|
|
array_to_map array_to_map
code language-json |
---|
|