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 omwikkeld met ${}
. Als de veldnaam bijvoorbeeld "Voornaam" of "Voornaam" is, moet de naam als volgt worden omwikkeld ${First Name}
of ${First\.Name}
respectievelijk.
.
), moet u een backslash gebruiken (\
) gebruiken om speciale tekens te verwijderen. Lees voor meer informatie de handleiding op speciale tekens verwijderen.Als een veldnaam ook alle van de volgende gereserveerde trefwoorden: ${}
:
new, mod, or, break, var, lt, for, false, while, eq, gt, div, not, null, continue, else, and, ne, true, le, if, ge, return, _errors
Gegevens binnen subvelden zijn toegankelijk met behulp van de puntnotatie. Als er bijvoorbeeld een name
-object, om toegang te krijgen tot firstName
veld, gebruiken name.firstName
.
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!"
\
: +, ?, ^, |, ., [, (, {, ), *, $, \
Als u meerdere tekens opneemt als scheidingsteken, wordt het scheidingsteken behandeld als een scheidingsteken voor meerdere tekens.- STRING: Vereist De tekenreeks die moet worden gesplitst.
- REGEX: Optioneel De reguliere expressie die kan worden gebruikt om de tekenreeks te splitsen.
["Hi,", "there"]
- INVOER: Vereist De tekenreeks die wordt doorzocht.
- SUBSTRING: Vereist De subtekenreeks waarnaar wordt gezocht binnen de tekenreeks.
- START_POSITION: Optioneel De locatie waar moet worden begonnen met zoeken in de tekenreeks.
- VOORVALLEN: Optioneel De nde instantie die vanaf de beginpositie moet worden gezocht. Standaard is dit 1.
- INVOER: Vereist De invoertekenreeks.
- TO_FIND: Vereist De tekenreeks die binnen de invoer moet worden opgezocht.
- TO_REPLACE: Vereist De tekenreeks die de waarde binnen "TO_FIND" vervangt.
- INVOER: Vereist De invoertekenreeks.
- START_INDEX: Vereist De index van de invoertekenreeks waar de subtekenreeks begint.
- LENGTE: Vereist De lengte van de subtekenreeks.
lcase
- INVOER: Vereist De tekenreeks die wordt omgezet in kleine letters.
lcase("HeLLo")
kauwen
- INVOER: Vereist De tekenreeks die wordt omgezet in hoofdletters.
ucase("HeLLo")
\
: \
. Als u meerdere scheidingstekens opneemt, wordt de tekenreeks gesplitst alle van de scheidingstekens in de tekenreeks. Opmerking: Deze functie retourneert alleen indexen die niet 'null' zijn van de tekenreeks, ongeacht de aanwezigheid van het scheidingsteken. Wanneer alle indexen, inclusief null, in de resulterende array zijn vereist, gebruikt u in plaats daarvan de functie "explode".- INVOER: Vereist De invoertekenreeks die wordt gesplitst.
- SCHEIDINGSTEKEN: Vereist De tekenreeks die wordt gebruikt om de invoer te splitsen.
["Hello", "world"]
- SCHEIDINGSTEKEN: Vereist De tekenreeks die wordt gebruikt om de objecten te verbinden.
- OBJECTEN: Vereist Een array van tekenreeksen die worden gekoppeld.
join(SEPARATOR, [OBJECTS])
join(" ", to_array(true, "Hello", "world"))
- INVOER: Vereist De tekenreeks die wordt opgevuld. Deze tekenreeks kan null zijn.
- TELLING: Vereist De grootte van de tekenreeks die moet worden opgevuld.
- TOEVOEGEN: Vereist De tekenreeks waarmee de invoer moet worden geplakt. Als deze null of leeg is, wordt deze behandeld als één spatie.
- INVOER: Vereist De tekenreeks die wordt opgevuld. Deze tekenreeks kan null zijn.
- TELLING: Vereist De grootte van de tekenreeks die moet worden opgevuld.
- TOEVOEGEN: Vereist De tekenreeks waarmee de invoer moet worden geplakt. Als deze null of leeg is, wordt deze behandeld als één spatie.
- STRING: Vereist De tekenreeks waarvoor u de eerste 'n'-tekens ontvangt.
- TELLING: Vereist De 'n' tekens die u uit de tekenreeks wilt halen.
- STRING: Vereist De tekenreeks waarvoor u de laatste 'n'-tekens ontvangt.
- TELLING: Vereist De 'n' tekens die u uit de tekenreeks wilt halen.
- STRING: Vereist De tekenreeks waaruit u de witruimte wilt verwijderen.
- STRING: Vereist De tekenreeks waaruit u de witruimte wilt verwijderen.
- STRING: Vereist De tekenreeks waaruit u de witruimte wilt verwijderen.
- STRING1: Vereist De eerste tekenreeks die u wilt vergelijken.
- STRING2: Vereist De tweede tekenreeks die u wilt vergelijken.
- STRING1: Vereist De eerste tekenreeks die u wilt vergelijken.
- STRING2: Vereist De tweede tekenreeks die u wilt vergelijken.
Gewone expressiefuncties
- STRING: Vereist De tekenreeks waaruit de groepen worden geëxtraheerd.
- REGEX: Vereist De reguliere expressie die moet overeenkomen met de groep.
- STRING: Vereist De tekenreeks die u controleert, komt overeen met de reguliere expressie.
- REGEX: Vereist De reguliere expressie die u vergelijkt.
Hashingfuncties hashing
- INVOER: Vereist The plain text to be hashed.
- TEKEN: Optioneel De naam van de tekenset. Mogelijke waarden zijn UTF-8, UTF-16, ISO-8859-1 en US-ASCII.
- INVOER: Vereist The plain text to be hashed.
- TEKEN: Optioneel De naam van de tekenset. Mogelijke waarden zijn UTF-8, UTF-16, ISO-8859-1 en US-ASCII.
- INVOER: Vereist The plain text to be hashed.
- TEKEN: Optioneel De naam van de tekenset. Mogelijke waarden zijn UTF-8, UTF-16, ISO-8859-1 en US-ASCII.
- INVOER: Vereist The plain text to be hashed.
- TEKEN: Optioneel De naam van de tekenset. Mogelijke waarden zijn UTF-8, UTF-16, ISO-8859-1 en US-ASCII.
- INVOER: Vereist The plain text to be hashed.
- TEKEN: Optioneel De naam van de tekenset. Mogelijke waarden zijn UTF-8, UTF-16, ISO-8859-1 en US-ASCII.
URL-functies url
- URL: Vereist De URL waaruit het protocol moet worden geëxtraheerd.
- URL: Vereist De URL waarvan de host moet worden opgehaald.
- URL: Vereist De URL waarvan de poort moet worden geëxtraheerd.
- URL: Vereist De URL waaruit het pad moet worden geëxtraheerd.
- FULL_PATH: Optioneel Een Booleaanse waarde die bepaalt of het volledige pad wordt geretourneerd. Indien ingesteld op false, wordt alleen het einde van het pad geretourneerd.
- URL: Vereist De URL waarvan u de queryreeks probeert te verkrijgen.
- ANKER: Vereist Bepaalt wat met het anker in het vraagkoord zal worden gedaan. Kan één van drie waarden zijn: "behouden", "verwijderen" of "toevoegen".
Als de waarde "preserve" is, wordt het anker aan de geretourneerde waarde gekoppeld.
Als de waarde "remove" is, wordt het anker verwijderd van de geretourneerde waarde.
Als de waarde "append" is, wordt het anker geretourneerd als een aparte waarde.
get_url_query_str ("foo://example.com:8042 /over/there?name= ferret#nose", "remove")
get_url_query_str ("foo://example.com :8042/over/there ?name=ferret#nose", "append")
{"name": "ferret#nose"}
{"name": "ferret"}
{"name": "ferret", "_anchor_": "nose"}
- URL: Vereist De invoer-URL met speciale tekens die u wilt vervangen of coderen met ASCII-tekens.
- URL: Vereist De invoer-URL met ASCII-tekens die u wilt decoderen in speciale tekens.
Datum- en tijdfuncties date-and-time
date
functie vindt u in de datumsectie van het dialoogvenster handleiding voor gegevensverwerking.2021-10-26T10:10:24Z
- DATUM: Vereist De invoerdatum die u wilt opmaken als een ZonedDateTime-object.
- INDELING: Vereist De notatie waarin de datum moet worden gewijzigd.
yyyy-MM-dd HH:mm:ss
")2019-10-23 11:24:35
- TIJDSTEMPEL: Vereist Het tijdstempel dat u wilt opmaken. Dit wordt geschreven in milliseconden.
- INDELING: Vereist De indeling die u wilt instellen als tijdstempel.
yyyy-MM-dd'T'HH:mm:ss.SSSX
")2019-10-23T11:24:35.000Z
- DATUM: Vereist De tekenreeks die de datum vertegenwoordigt.
- INDELING: Vereist De tekenreeks die staat voor de indeling van de brondatum.Opmerking: Dit doet niet vertegenwoordigen de notatie waarin u de datumtekenreeks wilt omzetten.
- DEFAULT_DATE: Vereist De geretourneerde standaarddatum als de opgegeven datum null is.
2019-10-23T11:24:00Z
- DATUM: Vereist De tekenreeks die de datum vertegenwoordigt.
- INDELING: Vereist De tekenreeks die staat voor de indeling van de brondatum.Opmerking: Dit doet niet vertegenwoordigen de notatie waarin u de datumtekenreeks wilt omzetten.
2019-10-23T11:24:00Z
- DATUM: Vereist De tekenreeks die de datum vertegenwoordigt.
"year"
"yyyy"
"yy"
"kwart"
"qq"
"q"
"month"
"mm"
"m"
"dayofyear"
"dy"
"y"
"dag"
"dd"
"d"
"week"
"ww"
"w"
"weekdag"
"dw"
"w"
"uur"
"hh"
"hh24"
"hh12"
"minute"
"mi"
"n"
"second"
"ss"
"s"
"millisecond"
"SSS"
- COMPONENT: Vereist Een tekenreeks die staat voor het deel van de datum.
- DATUM: Vereist De datum, in een standaardformaat.
"year"
"yyyy"
"yy"
"month"
"mm"
"m"
"dag"
"dd"
"d"
"uur"
"hh"
"minute"
"mi"
"n"
"second"
"ss"
"s"
- COMPONENT: Vereist Een tekenreeks die staat voor het deel van de datum.
- WAARDE: Vereist De waarde die voor de component voor een bepaalde datum moet worden ingesteld.
- DATUM: Vereist De datum, in een standaardformaat.
- JAAR: Vereist Het jaar, geschreven in vier cijfers.
- MAAND: Vereist De maand. De toegestane waarden zijn 1 tot 12.
- DAG: Vereist De dag. De toegestane waarden zijn 1 tot 31.
- UUR: Vereist Het uur. De toegestane waarden zijn 0 tot 23.
- MINUUT: Vereist De minuut. De toegestane waarden zijn 0 tot en met 59.
- NANOSECOND: Vereist De tweede nanowaarden. De toegestane waarden zijn 0 tot en met 999999999.
- TIJDZONE: Vereist De tijdzone voor de datumtijd.
2019-10-17T11:55:12Z
- DATUM: Vereist De datum die u wilt omzetten.
zone_date_to_utc​(2019-10-17T11:55:​12 PST
2019-10-17T19:55:12Z
- DATUM: Vereist De datum die u wilt omzetten.
- ZONE: Vereist De tijdzone waarnaar u de datum wilt converteren.
zone_date_to_utc​(now(), "Europe/Paris")
2021-10-26T15:43:59Z
Hiërarchieën - Objecten objects
- INVOER: Vereist Het object dat u wilt controleren, is leeg.
is_empty([1, null, 2, 3])
- INVOER: Vereist Een groep sleutel- en arrayparen.
arrays_to_objects('sku', explode("id1|id2", '\\|'), 'price', [22.5,14.35])
[{ "sku": "id1", "price": 22.5 }, { "sku": "id2", "price": 14.35 }]
- INVOER: Vereist Een platte lijst met sleutel/waardeparen.
{"firstName": "John", "lastName": "Doe"}
- STRING: Vereist De tekenreeks die wordt geparseerd om een object te maken.
- VALUE_DELIMITER: Optioneel Het scheidingsteken dat een veld van de waarde scheidt. Het standaardscheidingsteken is
:
. - FIELD_DELIMITER: Optioneel Het scheidingsteken dat de waardeparen van het gebied scheidt. Het standaardscheidingsteken is
,
.
get()
samen met str_to_object()
om waarden op te halen voor de toetsen in de tekenreeks.- 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.- INVOER: Vereist Het pad dat moet worden gecontroleerd als het bestaat in de brongegevens.
null
. Dit zou moeten worden gebruikt wanneer u niet het gebied aan het doelschema wilt kopiëren.null
- OBJECT: Vereist Het object waaruit de sleutels worden geëxtraheerd.
["book1", "book2"]
- STRING: Vereist De tekenreeks die u wilt parseren.
- TOETS: Vereist De sleutel waarvoor de waarde moet worden geëxtraheerd.
- VALUE_DELIMITER: Vereist Het scheidingsteken tussen het veld en de waarde. Indien
null
Als er een lege tekenreeks wordt opgegeven, is deze waarde:
. - FIELD_DELIMITER: Optioneel Het scheidingsteken tussen veld- en waardeparen. Indien
null
Als er een lege tekenreeks wordt opgegeven, is deze waarde,
.
- KAART: Vereist De invoerkaartgegevens.
- TOETS: Vereist De sleutel kan een enkele tekenreeks of een tekenreeks-array zijn. Als een ander primitief type (data/number) wordt opgegeven, wordt het behandeld als een tekenreeks.
- KAART: Vereist De gegevens van de invoerkaart
- TOETS: Vereist De sleutel kan een enkele tekenreeks of een tekenreeks-array zijn. Als een ander primitief type (data/number) wordt opgegeven, wordt het behandeld als een tekenreeks.
- TOETS: Vereist Toetsen moeten een tekenreeks 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: Vereist Verwijst naar elk ondersteund XDM-gegevenstype, behalve Kaarten.
- OBJECT: Vereist U kunt een binnenkomend object of objectarray opgeven en een kenmerk binnen het object aanwijzen als sleutel.
- OBJECT: Vereist U kunt een binnenkomend object of objectarray opgeven en een kenmerk binnen het object aanwijzen als sleutel.
Zie de sectie voor informatie over de functie voor het kopiëren van objecten onder.
Hiërarchieën - arrays arrays
- INVOER: Vereist De array waarvan u het eerste object met een andere waarde dan null wilt zoeken.
- INVOER: Vereist De array waarvan u het eerste element wilt zoeken.
- INVOER: Vereist De array waarvan u het laatste element wilt zoeken.
- ARRAY: Vereist De array waaraan u elementen toevoegt.
- WAARDEN: de elementen die u aan de array wilt toevoegen.
- ARRAY: Vereist De array waaraan u elementen toevoegt.
- WAARDEN: de array(en) die u aan de bovenliggende array wilt toevoegen.
- INCLUDE_NULLS: Vereist Een booleaanse waarde die aangeeft of null al dan niet moet worden opgenomen in de responsarray.
- WAARDEN: Vereist De elementen die in een array moeten worden omgezet.
[1, 2, 3]
- INVOER: Vereist Het object waarvan u de grootte probeert te vinden.
size_of([1, 2, 3, 4])
- ARRAY: Vereist De array die moet worden toegevoegd aan de array in het profiel.
upsert_array_append([123, 456])
- ARRAY: Vereist De array die de array in het profiel moet vervangen.
upsert_array_replace([123, 456], 1)
Hiërarchieën - Toewijzen map
- INVOER: Vereist De objectarray waarvan u het eerste object met een andere waarde dan null wilt zoeken.
- TOETS: Vereist De sleutel moet een veldnaam zijn in de objectarray en het object als waarde.
- INVOER: Vereist De objectarray waarvan u het eerste object met een andere waarde dan null wilt zoeken.
"{line1 : \"345 park ave\",line2: \"bldg 2\",City : \"san jose\",State : \"CA\",type: \"office\"}"
"{\"firstName\" : \"John\", \"lastName\": \"Doe\"}"
Logische operatoren logical-operators
- TOETS: Vereist De sleutel die moet worden aangepast.
- OPTIONS: Vereist Een samengevoegde array 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.".
- EXPRESSIE: Vereist De booleaanse expressie die wordt geëvalueerd.
- TRUE_VALUE: Vereist De waarde die wordt geretourneerd als de expressie true oplevert.
- FALSE_VALUE: Vereist De waarde die wordt geretourneerd als de expressie false oplevert.
Samenvoeging aggregation
- OPTIONS: Vereist Een of meer objecten die met elkaar kunnen worden vergeleken.
- OPTIONS: Vereist Een of meer objecten die met elkaar kunnen worden vergeleken.
Typeomzettingen type-conversions
- STRING: Vereist De tekenreeks die moet worden omgezet in een BigInteger.
- STRING: Vereist De tekenreeks die in een Double moet worden omgezet.
- STRING: Vereist De tekenreeks die moet worden omgezet in een zwevende waarde.
- STRING: Vereist De tekenreeks die in een geheel getal moet worden omgezet.
JSON-functies json
- STRING: Vereist De JSON-tekenreeks die moet worden gedeserialiseerd.
Bijzondere verrichtingen special-operations
guid
guid()
guid()
c7016dc7-3163-43f7-afc7-2e1c9c206333
fpid_to_ecid
- STRING: Vereist De FPID-tekenreeks die 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 apparaatveldwaarden leest u de lijst met apparaatveldwaarden in de bijlage van dit document.
- USER_AGENT: Vereist De userAgent-tekenreeks.
- USER_AGENT: Vereist De userAgent-tekenreeks.
- USER_AGENT: Vereist De userAgent-tekenreeks.
- USER_AGENT: Vereist De userAgent-tekenreeks.
- USER_AGENT: Vereist De userAgent-tekenreeks.
- USER_AGENT: Vereist De userAgent-tekenreeks.
- USER_AGENT: Vereist De userAgent-tekenreeks.
- USER_AGENT: Vereist De userAgent-tekenreeks.
Analysefuncties analytics
- EVENT_STRING: Vereist De door komma's gescheiden gebeurtenistekenreeks Analytics.
- EVENT_NAME: Vereist The event name to extract and ID from.
- EVENT_STRING: Vereist De door komma's gescheiden gebeurtenistekenreeks Analytics.
- EVENT_NAME: Vereist De naam van de gebeurtenis waaruit een waarde wordt geëxtraheerd.
- PRODUCTS_STRING: Vereist The Analytics products string.
- PRODUCTS_STRING: Vereist The Analytics products string.
- PRODUCTS_STRING: Vereist The Analytics products string.
- PRODUCTS_STRING: Vereist The Analytics products string.
- PRODUCTS_STRING: Vereist The Analytics products string.
- EVENT_NAME: Vereist De naam van de gebeurtenis waaruit waarden moeten worden geëxtraheerd.
- PRODUCTS_STRING: Vereist The Analytics products string.
- EVAR_NAME: Vereist De naam van de eVar die geëxtraheerd moet worden.
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 wordt city
en state
kenmerken worden ook automatisch bij uitvoering ingevoerd, omdat de address
object is toegewezen aan addr
. Als u een line2
-kenmerk in de XDM-structuur en uw invoergegevens bevatten ook een line2
in de address
-object, wordt deze automatisch opgenomen zonder dat de toewijzing handmatig hoeft te worden gewijzigd.
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 anonimisatiesoftware.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 |
---|
|