「資料準備」函式可用於根據來源欄位中輸入的內容計算值。
欄位名稱可以是任何合法識別碼 — 由字母和數字構成的長度不受限制的Unicode字母和數字序列,開頭為字母、美元符號($
)或底線字元(_
)。 變數名稱也區分大小寫。
如果欄位名稱不遵循此慣例,則必須將欄位名稱括起來 ${}
. 因此,舉例來說,如果欄位名稱為「First Name」或「First.Name」,則名稱必須包裝如下 ${First Name}
或 ${First\.Name}
(分別)。
與階層互動時,如果子屬性有句點(.
),則必須使用反斜線(\
)以逸出特殊字元。 如需詳細資訊,請閱讀以下指南: 逸出特殊字元.
此外,如果欄位名稱為 任何 保留關鍵字中,必須以 ${}
:
new, mod, or, break, var, lt, for, false, while, eq, gt, div, not, null, continue, else, and, ne, true, le, if, ge, return, _errors
可以使用點標籤法存取子欄位中的資料。 例如,如果有 name
物件,以存取 firstName
欄位,使用 name.firstName
.
下表列出所有支援的對映函式,包括範例運算式及其產生的輸出。
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
concat | 串連指定的字串。 |
|
concat(STRING_1, STRING_2) | concat("Hi, ", "there", "!") | "Hi, there!" |
爆炸 | 根據規則運算式分割字串並傳回部分陣列。 可選擇加入規則運算式以分割字串。 依預設,分割會解析為「,」。 下列分隔符號 需要 將逸出 \ : +, ?, ^, |, ., [, (, {, ), *, $, \ 如果您包含多個字元做為分隔字元,則會將分隔字元視為多字元分隔字元。 |
|
explode(STRING, REGEX) | explode("Hi, there!", ") | ["Hi,", "there"] |
instr | 傳回子字串的位置/索引。 |
|
instr(INPUT, SUBSTRING, START_POSITION, OCCURRENCE) | instr(「adobe.com」, 「com」) | 6 |
取代者 | 取代搜尋字串(如果存在於原始字串中)。 |
|
取代器(INPUT, TO_FIND, TO_REPLACE) | replacestr("this is a string re test", "re", "replace") | 「這是字串取代測試」 |
substr | 傳回指定長度的子字串。 |
|
substr(INPUT, START_INDEX, LENGTH) | substr(「這是子字串測試」,7、8) | 「一個子集」 |
lower / lcase |
將字串轉換為小寫。 |
|
lower(INPUT) | lower("HeLow") lcase(「HeLo」) |
"hello" |
upper / ucase |
將字串轉換為大寫。 |
|
upper(INPUT) | upper(「HeLor」) Ucase(「HeLlO」) |
"HELLO" |
split | 在分隔符號上分割輸入字串。 下列分隔符號 需要 將逸出 \ : \ . 如果您包含多個分隔字元,該字串將會分割為 任何 字串中存在的分隔字元數量。 |
|
split(INPUT, SEPARATOR) | split(「Hello world」,「 」) | ["Hello", "world"] |
加入 | 使用分隔符號聯結物件清單。 |
|
join(SEPARATOR, [OBJECTS]) |
join(" ", to_array(true, "Hello", "world")) |
「Hello world」 |
lpad | 將字串的左側與其他指定字串貼齊。 |
|
lpad(INPUT, COUNT, PADDING) | lpad("bat", 8, "yz") | "yzybat" |
rpad | 將字串的右側與其他指定字串貼齊。 |
|
rpad(輸入、計數、內距) | rpad("bat", 8, "yz") | "batyzyzy" |
左側 | 取得指定字串的前「n」個字元。 |
|
left(STRING, COUNT) | left("abcde", 2) | "ab" |
右 | 取得指定字串的最後「n」個字元。 |
|
right(STRING, COUNT) | right("abcde", 2) | "de" |
ltrim | 移除字串開頭的空格。 |
|
ltrim(STRING) | ltrim(" hello") | "hello" |
rtrim | 移除字串結尾的空格。 |
|
rtrim(STRING) | rtrim(「hello 」) | "hello" |
trim | 移除字串開頭和結尾的空格。 |
|
trim(STRING) | trim(" hello ") | "hello" |
等於 | 比較兩個字串以確認是否相等。 此函式區分大小寫。 |
|
STRING1。equals(STRING2) | "string1"。 equals("STRING1") | false |
equalsIgnoreCase | 比較兩個字串以確認是否相等。 此函式為 非 區分大小寫。 |
|
STRING1。equalsIgnoreCase(STRING2) | "string1"。 equalsIgnoreCase("STRING1) | true |
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
extract_regex | 根據規則運算式,從輸入字串中擷取群組。 |
|
extract_regex(STRING, REGEX) | extract_regex("E259,E259B_009,1_1", "([,]+),[,]*,([^,]+)」) | [「E259,E259B_009,1_1」、「E259」、「1_1」] |
matches_regex | 檢查字串是否符合輸入的規則運算式。 |
|
matches_regex(STRING, REGEX) | matches_regex("E259,E259B_009,1_1", "([,]+),[,]*,([^,]+)」) | true |
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
sha1 | 接受輸入並使用安全雜湊演演算法1 (SHA-1)產生雜湊值。 |
|
sha1(INPUT, CHARSET) | sha1(「我的文字」、「UTF-8」) | c3599c11e47719df18a2448690840c5dfcce3c80 |
sha256 | 接受輸入並使用安全雜湊演演算法256 (SHA-256)產生雜湊值。 |
|
sha256(輸入,字元集) | sha256(「我的文字」、「UTF-8」) | 7330d2b39ca35eaf4cb95fc846c21ee6a39af698154a83a586ee270a0d372104 |
sha512 | 接受輸入並使用安全雜湊演演算法512 (SHA-512)產生雜湊值。 |
|
sha512(輸入,字元集) | sha512(「我的文字」、「UTF-8」) | a3d7e45a0d9be5fd4e4b9a3b8c9c2163c21ef708bf11b4232bb21d2a8704ada2cdcd7b367dd0788a89a5c908cfe377aceb1072a7b386d4fd2ff68a fd24d16 |
md5 | 接受輸入並使用MD5產生雜湊值。 |
|
md5(輸入,字元集) | md5(「我的文字」、「UTF-8」) | d3b96ce8c9fb4e9bd0198d03ba6852c7 |
crc32 | 取得輸入使用循環冗餘檢查(CRC)演演算法來產生32位元循環代碼。 |
|
crc32(INPUT, CHARSET) | crc32(「我的文字」,「UTF-8」) | 8df92e80 |
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
get_url_protocol | 從指定的URL傳回通訊協定。 如果輸入無效,則會傳回null。 |
|
get_url_protocol(URL) | get_url_protocol("https://platform.adobe.com/home") | https |
get_url_host | 傳回指定URL的主機。 如果輸入無效,則會傳回null。 |
|
get_url_host(URL) | get_url_host("https://platform.adobe.com/home") | platform.adobe.com |
get_url_port | 傳回指定URL的連線埠。 如果輸入無效,則會傳回null。 |
|
get_url_port(URL) | get_url_port("sftp://example.com//home/joe/employee.csv") | 22 |
get_url_path | 傳回指定URL的路徑。 依預設,會傳回完整路徑。 |
|
get_url_path(URL, FULL_PATH) | get_url_path("sftp://example.com//home/joe/employee.csv") | "//home/joe/employee.csv" |
get_url_query_str | 傳回指定URL的查詢字串,作為查詢字串名稱和查詢字串值的對應。 |
|
get_url_query_str(URL, ANCHOR) | get_url_query_str("foo://example.com:8042/over/there?name=ferret#nose", "retain") 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"} |
get_url_encoded | 此函式以URL作為輸入,並使用ASCII字元取代或編碼特殊字元。 如需特殊字元的詳細資訊,請參閱 特殊字元清單 於本檔案的附錄中。 |
|
get_url_encoded(URL) | get_url_encoded("https"://example.com/partneralliance_asia-pacific_2022") | https%3A%2F%2Fexample.com%2Fpartneralliance_asia-pacific_2022 |
get_url_decoded | 此函式以URL作為輸入,並將ASCII字元解碼為特殊字元。 如需特殊字元的詳細資訊,請參閱 特殊字元清單 於本檔案的附錄中。 |
|
get_url_decoded(URL) | get_url_decoded("https%3A%2F%2Fexample.com%2Fpartneralliance_asia-pacific_2022") | https://example.com/partneralliance_asia-pacific_2022 |
請向左/向右捲動以檢視表格的完整內容。 關於的更多資訊 date
函式的dates區段中 資料格式處理指南.
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
now | 擷取目前時間。 | now() | now() | 2021-10-26T10:10:24Z |
|
時間戳記 | 擷取目前的Unix時間。 | 時間戳記() | 時間戳記() | 1571850624571 | |
格式 | 根據指定的格式設定輸入日期的格式。 |
|
format(日期,格式) | format(2019-10-23T11:24:00+00:00, "yyyy-MM-dd HH:mm:ss") | 2019-10-23 11:24:35 |
dformat | 根據指定格式將時間戳記轉換為日期字串。 |
|
dformat(TIMESTAMP, FORMAT) | dformat(1571829875000, "yyyy-MM-dd'T'HH:mm:ss.SSSX") | 2019-10-23T11:24:35.000Z |
日期 | 將日期字串轉換為ZonedDateTime物件(ISO 8601格式)。 |
|
date(DATE, FORMAT, DEFAULT_DATE) | date("2019-10-23 11:24", "yyyy-MM-dd HH:mm", now()) | 2019-10-23T11:24:00Z |
日期 | 將日期字串轉換為ZonedDateTime物件(ISO 8601格式)。 |
|
日期(日期,格式) | date("2019-10-23 11:24", "yyyy-MM-dd HH:mm") | 2019-10-23T11:24:00Z |
日期 | 將日期字串轉換為ZonedDateTime物件(ISO 8601格式)。 |
|
date(DATE) | date("2019-10-23 11:24") | 「2019-10-23T11:24:00Z」 |
date_part | 擷取日期部分。 支援下列元件值: "year" "yyyy" "yy" "quarter" "qq" "q" "month" "mm" "m" "dayofyear" "dy" "y" "day" "dd" "d" "week" "ww" "w" "weekday" "dw" "w" "hour" "hh" "hh24" "hh12" "minute" "mi" "n" "second" "ss" "s" "毫秒" "SSS" |
|
date_part(COMPONENT, DATE) | date_part("MM", date("2019-10-17 11:55:12英吋) | 10 |
set_date_part | 取代指定日期中的元件。 接受下列元件: "year" "yyyy" "yy" "month" "mm" "m" "day" "dd" "d" "hour" "hh" "minute" "mi" "n" "second" "ss" "s" |
|
set_date_part(COMPONENT, VALUE, DATE) | set_date_part("m", 4, date("2016-11-09T11:44:44.797英吋) | 「2016-04-09T11:44:44Z英吋 |
make_date_time | 從零件建立日期。 此函式也可以使用make_timestamp感生。 |
|
make_date_time(年、月、日、小時、分鐘、秒、納秒、時區) | make_date_time(2019, 10, 17, 11, 55, 12, 999, "美洲/洛杉磯") | 2019-10-17T11:55:12Z |
zone_date_to_utc | 將任何時區的日期轉換為UTC格式的日期。 |
|
zone_date_to_utc(DATE) | zone_date_to_utc​(2019-10-17T11:55:​12 PST |
2019-10-17T19:55:12Z |
zone_date_to_zone | 將日期從一個時區轉換為另一個時區。 |
|
zone_date_to_zone(DATE, ZONE) | zone_date_to_utc​(now(), "Europe/Paris") |
2021-10-26T15:43:59Z |
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
is_empty | 檢查物件是否為空白。 |
|
is_empty(INPUT) | is_empty([1, null, 2, 3]) |
false |
arrays_to_object | 建立物件清單。 |
|
arrays_to_object(INPUT) | arrays_to_objects('sku', explode("id1|id2", '\\|'), 'price', [22.5,14.35]) |
[{ "sku": "id1", "price": 22.5 }, { "sku": "id2", "price": 14.35 }] |
to_object | 根據指定的平面索引鍵/值配對建立物件。 |
|
to_object(INPUT) | to_object("firstName", "John", "lastName", "Doe") | {"firstName": "John", "lastName": "Doe"} |
str_to_object | 從輸入字串建立物件。 |
|
str_to_object(STRING, VALUE_DELIMITER, FIELD_DELIMITER) 注意:您可以使用 get() 函式以及 str_to_object() 擷取字串中金鑰的值。 |
|
|
contains_key | 檢查物件是否存在於來源資料中。 注意: 此函式取代已棄用的 is_set() 函式。 |
|
contains_key(INPUT) | contains_key("evars.evar.field1") | true |
無效 | 將屬性的值設為 null . 當您不想將欄位複製到目標結構描述時,就應該使用此專案。 |
nullify() | nullify() | null |
|
get_keys | 剖析索引鍵/值配對並傳回所有索引鍵。 |
|
get_keys(OBJECT) | get_keys({"book1": "Pride and Impance", "book2": "1984"}) | ["book1", "book2"] |
get_values | 根據指定的索引鍵,剖析索引鍵/值配對並傳回字串的值。 |
|
get_values(STRING, KEY, VALUE_DELIMITER, FIELD_DELIMITER) | get_values("firstName - John , lastName - Cena , phone - 555 420 8692", "firstName", "-", ",") | John |
map_get_values | 接受地圖和按鍵輸入。 如果輸入是單一索引鍵,則函式會傳回與該索引鍵相關聯的值。 如果輸入為字串陣列,則函式會傳回與所提供索引鍵對應的所有值。 如果傳入的對應有重複的索引鍵,則傳回值必須刪除重複的索引鍵並傳回唯一值。 |
|
get_values(MAP, KEY) | 請參閱 附錄 以取得程式碼範例。 | |
map_has_keys | 如果提供一個或多個輸入鍵,則函式傳回true。 如果提供字串陣列作為輸入,則函式在找到的第一個鍵上傳回true。 |
|
map_has_keys(MAP, KEY) | 請參閱 附錄 以取得程式碼範例。 | |
add_to_map | 接受至少兩個輸入。 可提供任意數量的地圖作為輸入。 「資料準備」會傳回單一對應,其中包含來自所有輸入的所有索引鍵/值組。 如果一個或多個索引鍵重複(在相同對應中或跨對應),資料準備會去除重複的索引鍵,因此第一個索引鍵/值組會按照它們在輸入中傳遞的順序持續存在。 | 對應: 必填 輸入地圖資料。 | add_to_map(MAP 1, MAP 2, MAP 3, …) | 請參閱 附錄 以取得程式碼範例。 |
如需物件複製功能的詳細資訊,請參閱區段 以下.
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
合併 | 傳回給定陣列中的第一個非null物件。 |
|
coalesce(INPUT) | coalesce(null, null, null, first, null, second) | "first" |
第一 | 擷取給定陣列的第一個元素。 |
|
first(INPUT) | first("1", "2", "3") | "1" |
上次 | 擷取給定陣列的最後一個元素。 |
|
last(INPUT) | last("1", "2", "3") | "3" |
add_to_array | 將元素新增至陣列結尾。 |
|
add_to_array(ARRAY, VALUES) | add_to_array(['a', 'b'], 'c', 'd') | ['a'、'b'、'c'、'd'] |
join_array | 將陣列彼此結合。 |
|
join_arrays(ARRAY, VALUES) | join_arrays(['a', 'b'], ['c'], ['d', 'e']) | ['a'、'b'、'c'、'd'、'e'] |
to_array | 採用輸入清單並將其轉換為陣列。 |
|
to_array(INCLUDE_NULLS, VALUES) | to_array(false, 1, null, 2, 3) | [1, 2, 3] |
大小_of | 傳回輸入的大小。 |
|
size_of(INPUT) | size_of([1, 2, 3, 4]) |
4 |
upsert_array_append | 此函式用於將整個輸入陣列中的所有元素附加到Profile中陣列的結尾。 此函式為 僅限 適用於更新期間。 如果在插入內容中使用,此函式會依原樣傳回輸入。 |
|
upsert_array_append(ARRAY) | upsert_array_append([123, 456]) |
[123, 456] |
upsert_array_replace | 此函式用於取代陣列中的元素。 此函式為 僅限 適用於更新期間。 如果在插入內容中使用,此函式會依原樣傳回輸入。 |
|
upsert_array_replace(ARRAY) | upsert_array_replace([123, 456], 1) |
[123, 456] |
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
解碼 | 指定將索引鍵和索引鍵值配對清單平面化為陣列時,若找到索引鍵,此函式會傳回值,若陣列中存在索引鍵,則會傳回預設值。 |
|
decode(KEY, OPTIONS) | decode(stateCode, "ca", "California", "pa", "Pennsylvania", "N/A") | 如果指定的stateCode為"ca"、"California"。 如果指定的stateCode為「pa」,「Pennsylvania」。 如果stateCode不符合下列內容,「不適用」。 |
iif | 評估給定的布林運算式,並根據結果傳回指定的值。 |
|
iif(運算式, TRUE_VALUE, FALSE_VALUE) | iif("s"。equalsIgnoreCase("S"), "True", "False") | "True" |
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
min | 傳回給定引數的最小值。 使用自然排序。 |
|
min(OPTIONS) | min(3, 1, 4) | 1 |
max | 傳回給定引數的最大值。 使用自然排序。 |
|
最大(OPTIONS) | max(3, 1, 4) | 4 |
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
to_bigint | 將字串轉換為BigInteger。 |
|
to_bigint(STRING) | to_bigint("1000000.34") | 1000000.34 |
to_decimal | 將字串轉換為雙精度浮點數。 |
|
to_decimal(STRING) | to_decimal("20.5") | 20.5 |
to_float | 將字串轉換為浮點數。 |
|
to_float(STRING) | to_float("12.3456") | 12.34566 |
to_integer | 將字串轉換為整數。 |
|
to_integer(STRING) | to_integer("12") | 12 |
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
json_to_object | 從給定的字串將JSON內容還原序列化。 |
|
json_to_object(STRING) | json_to_object({"info":{"firstName":"John","lastName": "Doe"}}) | 代表JSON的物件。 |
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
uuid / guid |
產生偽隨機識別碼。 | uuid() guid() |
uuid() guid() |
7c0267d2-bb74-4e1a-9275-3bf4fccda5f4 c7016dc7-3163-43f7-afc7-2e1c9c206333 |
|
fpid_to_ecid |
此函式接受FPID字串並將其轉換為ECID,以便用於Adobe Experience Platform和Adobe Experience Cloud應用程式。 |
|
fpid_to_ecid(STRING) |
fpid_to_ecid("4ed70bee-b654-420a-a3fd-b58b6b65e991") |
"28880788470263023831040523038280731744" |
下表包含的任何使用者代理程式函式都可以傳回下列任一值:
如需裝置欄位值的詳細資訊,請參閱 裝置欄位值清單 於本檔案的附錄中。
請向左/向右捲動以檢視表格的完整內容。
函數 | 說明 | 參數 | 語法 | 運算式 | 範例輸出 |
---|---|---|---|---|---|
ua_os_name | 從使用者代理字串中擷取作業系統名稱。 |
|
ua_os_name(USER_AGENT) | ua_os_name("Mozilla/5.0 (iPhone;CPU iPhone OS 5_1_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML like Gecko)版本/5.1 Mobile/9B206 Safari/7534.48.3") | iOS |
ua_os_version_major | 從使用者代理程式字串中擷取作業系統的主要版本。 |
|
ua_os_version_major(USER_AGENT) | ua_os_version_majors("Mozilla/5.0 (iPhone;CPU iPhone OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML like Gecko)版本/5.1 Mobile/9B206 Safari/7534.48.3") | iOS 5 |
ua_os_version | 從使用者代理程式字串中擷取作業系統的版本。 |
|
ua_os_version(USER_AGENT) | ua_os_version("Mozilla/5.0 (iPhone;CPU iPhone OS 5_1_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML like Gecko)版本/5.1 Mobile/9B206 Safari/7534.48.3") | 5.1.1 |
ua_os_name_version | 從使用者代理字串中擷取作業系統的名稱和版本。 |
|
ua_os_name_version(USER_AGENT) | ua_os_name_version("Mozilla/5.0 (iPhone;CPU iPhone OS 5_1_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML like Gecko)版本/5.1 Mobile/9B206 Safari/7534.48.3") | iOS 5.1.1 |
ua_agent_version | 從使用者代理字串中擷取代理程式版本。 |
|
ua_agent_version(USER_AGENT) | ua_agent_version("Mozilla/5.0 (iPhone;CPU iPhone OS 5_1_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML like Gecko)版本/5.1 Mobile/9B206 Safari/7534.48.3") | 5.1 |
ua_agent_version_major | 從使用者代理字串中擷取代理名稱和主要版本。 |
|
ua_agent_version_major(USER_AGENT) | ua_agent_version_major("Mozilla/5.0 (iPhone;CPU iPhone OS 5_1_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML like Gecko)版本/5.1 Mobile/9B206 Safari/7534.48.3") | Safari 5 |
ua_agent_name | 從使用者代理字串中擷取代理名稱。 |
|
ua_agent_name(USER_AGENT) | ua_agent_name("Mozilla/5.0 (iPhone;CPU iPhone OS 5_1_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML like Gecko)版本/5.1 Mobile/9B206 Safari/7534.48.3") | Safari |
ua_device_class | 從使用者代理程式字串中擷取裝置類別。 |
|
ua_device_class(USER_AGENT) | ua_device_class("Mozilla/5.0 (iPhone;CPU iPhone OS 5_1_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML like Gecko)版本/5.1 Mobile/9B206 Safari/7534.48.3") | 電話 |
當來源中的物件對應至XDM中的物件時,會自動套用物件複製功能。 使用者無需執行其他動作。
您可以使用物件複製功能自動複製物件的屬性,而不需變更對映。 例如,如果來源資料的結構為:
address{
line1: 4191 Ridgebrook Way,
city: San Jose,
state: California
}
和XDM結構:
addr{
addrLine1: 4191 Ridgebrook Way,
city: San Jose,
state: California
}
然後,對應會變成:
address -> addr
address.line1 -> addr.addrLine1
在上述範例中, city
和 state
屬性也會在執行階段自動擷取,因為 address
物件已對應至 addr
. 如果您要建立 line2
XDM結構中的屬性,而您的輸入資料也包含 line2
在 address
物件,則也會自動擷取,而不需要手動變更對應。
若要確保自動對應能夠運作,必須符合下列先決條件:
如果不滿足任何先決條件,則必須使用資料準備手動將來源結構描述對應到XDM結構描述。
以下提供使用「資料準備」對應函式的其他資訊
下表概述保留字元及其對應的編碼字元清單。
保留字元 | 編碼字元 |
---|---|
空格 | %20 |
! | %21 |
」 | %22 |
# | %23 |
$ | %24 |
% | %25 |
& | %26 |
' | %27 |
( | %28 |
) | %29 |
* | %2A |
+ | %2B |
, | %2C |
/ | %2F |
: | %3A |
; | %3B |
< | %3C |
= | %3D |
> | %3E |
? | %3F |
@ | %40 |
[ | %5B |
] | %5D |
^ | %5E |
` | %60 |
~ | %7E |
下表概述裝置欄位值清單及其對應說明。
裝置 | 說明 |
---|---|
桌面 | 桌上型電腦或筆記型電腦型別的裝置。 |
匿名 | 匿名裝置。 在某些情況下,這些類別包括 useragents 已遭匿名化軟體變更的專案。 |
未知 | 未知的裝置。 這些通常是 useragents 未包含裝置相關資訊的資訊。 |
行動 | 尚未識別的行動裝置。 此行動裝置可以是電子閱讀器、平板電腦、手機、手錶等。 |
平板電腦 | 具備大熒幕(通常> 7英吋)的行動裝置。 |
電話 | 小熒幕(通常< 7英吋)的行動裝置。 |
觀看 | 具有小熒幕(通常小於2英吋)的行動裝置。 這些裝置通常可作為手機/平板電腦型別裝置的額外畫面。 |
增強現實 | 具有AR功能的行動裝置。 |
Virtual Reality | 具備VR功能的行動裝置。 |
電子閱讀器 | 類似於平板電腦的裝置,但通常具有 eInk 畫面。 |
機上盒 | 連線裝置,允許透過電視大小的熒幕進行互動。 |
TV | 類似機頂盒的裝置,但內建於電視中。 |
家用電器 | (通常為大型)家用電器,例如冰箱。 |
遊戲主機 | 固定式遊戲系統,例如 Playstation 或 XBox. |
手持式遊戲機 | 行動遊戲系統,例如 Nintendo Switch. |
語音 | 語音導向裝置,例如 Amazon Alexa 或 Google Home. |
汽車 | 車輛瀏覽器。 |
自動機制 | 造訪網站的機器人。 |
機器人行動裝置 | 造訪網站但表示希望被視為行動訪客的機器人。 |
自動機制模擬器 | 造訪網站的機器人,假扮成機器人 Google,但事實並非如此。 注意:在大多數情況下,機器人模仿者確實是機器人。 |
Cloud | 雲端型應用程式。 這些不是機器人或駭客,而是需要連線的應用程式。 其中包括 Mastodon 伺服器。 |
駭客 | 若在中偵測到指令碼,則會使用此裝置值。 useragent 字串。 |
example = "map_get_values(book_details,\"author\") where input is : {\n" +
" \"book_details\":\n" +
" {\n" +
" \"author\": \"George R. R. Martin\",\n" +
" \"price\": 17.99,\n" +
" \"ISBN\": \"ISBN-978-0553801477\"\n" +
" }\n" +
"}",
result = "{\"author\": \"George R. R. Martin\"}"
example = "map_has_keys(book_details,\"author\")where input is : {\n" +
" \"book_details\":\n" +
" {\n" +
" \"author\": \"George R. R. Martin\",\n" +
" \"price\": 17.99,\n" +
" \"ISBN\": \"ISBN-978-0553801477\"\n" +
" }\n" +
"}",
result = "true"
example = "add_to_map(book_details, book_details2) where input is {\n" +
" \"book_details\":\n" +
" {\n" +
" \"author\": \"George R. R. Martin\",\n" +
" \"price\": 17.99,\n" +
" \"ISBN\": \"ISBN-978-0553801477\"\n" +
" }\n" +
"}" +
"{\n" +
" \"book_details2\":\n" +
" {\n" +
" \"author\": \"Neil Gaiman\",\n" +
" \"price\": 17.99,\n" +
" \"ISBN\": \"ISBN-0-380-97365-0\"\n" +
" \"publisher\": \"William Morrow\"\n" +
" }\n" +
"}",
result = "{\n" +
" \"book_details\":\n" +
" {\n" +
" \"author\": \"George R. R. Martin\",\n" +
" \"price\": 17.99,\n" +
" \"ISBN\": \"ISBN-978-0553801477\"\n" +
" \"publisher\": \"William Morrow\"\n" +
" }\n" +
"}",
returns = "A new map with all elements from map and addends"