資料準備映射函式

資料準備函式可用於根據在源欄位中輸入的內容計算和計算值。

欄位

欄位名稱可以是任何合法標識符 — 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

子域內的資料可以使用點表示法訪問。 例如,如果 name 對象,訪問 firstName 欄位,使用 name.firstName

函式清單

下表列出了所有支援的映射函式,包括示例表達式及其結果輸出。

字串函式

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
concat 連接給定字串。
  • 字串:將連接的字串。
concat(STRING_1, STRING_2) concat("Hi, ", "the", "!") "Hi, there!"
爆炸 根據規則運算式拆分字串並返回一組部件。 可以選擇包括regex以拆分字串。 預設情況下,拆分解析為「,」。 以下分隔符 需要 要一起逃跑 \: +, ?, ^, |, ., [, (, {, ), *, $, \ 如果包含多個字元作為分隔符,則分隔符將被視為多字元分隔符。
  • 字串: 必需 需要拆分的字串。
  • 規則運算式: 可選 可用於拆分字串的規則運算式。
explode(STRING, REGEX) explode("你好!", ") ["Hi,", "there"]
安裝 返回子字串的位置/索引。
  • 輸入: 必需 正在搜索的字串。
  • 子字串: 必需 在字串中搜索的子字串。
  • 開始位置(_P): 可選 在字串中開始查找的位置。
  • 具體值: 可選 要從起始位置查找的第n個出現。 預設情況下為1。
instr(INPUT、SUBSTRING、START_POSITION、OCCURRENCE) instr("adobe.com", "com") 6
更換 如果原始字串中存在,則替換搜索字串。
  • 輸入: 必需 輸入字串。
  • 查找(_F): 必需 要在輸入中查找的字串。
  • 替換(_R): 必需 將替換"TO_FIND"中值的字串。
replacestr(INPUT、TO_FIND、TO_REPLACE) replacestr("這是字串retest"、"re"、"replace") "這是字串替換test"
substr 返回給定長度的子字串。
  • 輸入: 必需 輸入字串。
  • START_INDEX: 必需 子字串開始的輸入字串的索引。
  • 長度: 必需 子字串的長度。
substr(INPUT, START_INDEX, LENGTH) substr("這是子字串test", 7, 8) " a subst"
低/
將字串轉換為小寫。
  • 輸入: 必需 將轉換為小寫的字串。
低(輸入) lower("HeLLo")
lcase("HeLLo")
"你好"

將字串轉換為大寫。
  • 輸入: 必需 將轉換為大寫的字串。
上(輸入) upper("HeLo")
ucase("HeLLo")
"你好"
split 在分隔符上拆分輸入字串。 以下分隔符 需求 要一起逃跑 \: \。 如果包含多個分隔符,則字串將拆分 任何 的子菜單。
  • 輸入: 必需 要拆分的輸入字串。
  • 分隔符: 必需 用於拆分輸入的字串。
拆分(輸入,分隔符) split("Hello world", " ") ["Hello", "world"]
加入 使用分隔符聯接對象清單。
  • 分隔符: 必需 將用於連接對象的字串。
  • 對象: 必需 要聯接的字串陣列。
join(SEPARATOR, [OBJECTS]) join(" ", to_array(true, "Hello", "world")) "你好世界"
lpad 將字串的左側與另一給定字串相加。
  • 輸入: 必需 要塞的繩子。 此字串可以為Null。
  • 計數: 必需 要填充的字串的大小。
  • 填充: 必需 用填充輸入的字串。 如果為空或空,則它將被視為單個空格。
lpad(INPUT、COUNT、PADDING) lpad("bat", 8, "yz") "yzybat"
rpad 將字串的右側與另一個給定字串相加。
  • 輸入: 必需 要塞的繩子。 此字串可以為Null。
  • 計數: 必需 要填充的字串的大小。
  • 填充: 必需 用填充輸入的字串。 如果為空或空,則它將被視為單個空格。
rpad(INPUT、COUNT、PADDING) rpad("bat"、8、"yz") "巴特茲"
獲取給定字串的前"n"個字元。
  • 字串: 必需 您要獲取的第一個"n"字元的字串。
  • 計數: 必需​要從字串獲取的"n"字元。
left(字串,計數) left("abcde", 2 "ab"
獲取給定字串的最後一個"n"字元。
  • 字串: 必需 要獲取的最後一個"n"字元的字串。
  • 計數: 必需​要從字串獲取的"n"字元。
right(字串,COUNT) right("abcde", 2 "de"
短線 從字串開頭刪除空白。
  • 字串: 必需 要從中刪除空白的字串。
ltrim(STRING) ltrim("hello") "你好"
修剪 從字串的末尾刪除空白。
  • 字串: 必需 要從中刪除空白的字串。
rtrim(STRING) rtrim("hello ") "你好"
trim 從字串的開頭和結尾刪除空格。
  • 字串: 必需 要從中刪除空白的字串。
trim(STRING) trim("hello ") "你好"
等於 比較兩個字串以確認它們是否相等。 此函式區分大小寫。
  • STRING1: 必需 要比較的第一個字串。
  • STRING2: 必需 要比較的第二個字串。
字串1​。equals(​STRING2) "string1" ​equals​("STRING1") false
equalsIgnoreCase 比較兩個字串以確認它們是否相等。 此函式為 區分大小寫。
  • STRING1: 必需 要比較的第一個字串。
  • STRING2: 必需 要比較的第二個字串。
字串1​。equalsIgnoreCase​(STRING2) "string1" ​equalsIgnoreCase​("STRING1) true

規則運算式函式

函數 說明 參數 語法 運算式 示例輸出
抽取_regex 根據規則運算式從輸入字串中提取組。
  • 字串: 必需 從中提取組的字串。
  • 規則運算式: 必需 希望組匹配的規則運算式。
extract_regex(STRING, REGEX) extract_regex​("E259,E259B_009,1_1" ​, "([,]+),[,]*,([^,]+)」) ["E259,E259B_009,1_1","E259","1_1"]
匹配_regex 檢查字串是否與輸入的規則運算式匹配。
  • 字串: 必需 您正在檢查的字串與規則運算式匹配。
  • 規則運算式: 必需 您所比較的規則運算式。
matches_regex(STRING, REGEX) matches_regex("E259,E259B_009,1_1", "([,]+),[,]*,([^,]+)」)

散列函式

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
沙1 使用安全散列算法1(SHA-1)獲取輸入並生成散列值。
  • 輸入: 必需 要散列的純文字檔案。
  • 字元集: 可選 字元集的名稱。 可能的值包括UTF-8、UTF-16、ISO-8859-1和US-ASCII。
sha1(INPUT、CHARSET) sha1("my text"、"UTF-8") c3599c11e47719df18a24 ​48690840c5dfcce3c80
沙256 使用安全散列算法256(SHA-256)獲取輸入並生成散列值。
  • 輸入: 必需 要散列的純文字檔案。
  • 字元集: 可選 字元集的名稱。 可能的值包括UTF-8、UTF-16、ISO-8859-1和US-ASCII。
sha256(INPUT, CHARSET) sha256("my text"、"UTF-8") 7330d2b39ca35eaf4cb95fc846c21 ee6a39af​698154a83a586ee270a0d372104
沙512 使用安全散列算法512(SHA-512)獲取輸入並生成散列值。
  • 輸入: 必需 要散列的純文字檔案。
  • 字元集: 可選 字元集的名稱。 可能的值包括UTF-8、UTF-16、ISO-8859-1和US-ASCII。
sha512(輸入、字元集) sha512("my text"、"UTF-8") a3d7e45a0d9be5fd4e4b9a3b8c9c2163c21ef ​708bf11b4232bb21d2a8704ada2cd7b367dd078a89 ​a5c908cfe377aceb1072a7b386b7d4fd2ff68a8fd24d16
md5 使用MD5獲取輸入並生成散列值。
  • 輸入: 必需 要散列的純文字檔案。
  • 字元集: 可選 字元集的名稱。 可能的值包括UTF-8、UTF-16、ISO-8859-1和US-ASCII。
md5(輸入、字元集) md5("my text", "UTF-8") d3b96ce8c9fb4 ​e9bd0198d03ba6852c7
32哥斯大黎加科朗 輸入使用循環冗餘校驗(CRC)算法來生成32位循環碼。
  • 輸入: 必需 要散列的純文字檔案。
  • 字元集: 可選 字元集的名稱。 可能的值包括UTF-8、UTF-16、ISO-8859-1和US-ASCII。
CRC32(INPUT, CHARSET) crc32("my text", "UTF-8") 8df92e80

URL函式

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
get_url_protocol 從給定URL返回協定。 如果輸入無效,則返回null。
  • URL: 必需 需要從中提取協定的URL。
get_url_protocol​(URL) get_url_protocol("https://platform ​ .adobe.com/home") https
get_url_host 返回給定URL的主機。 如果輸入無效,則返回null。
  • URL: 必需 需要從中提取主機的URL。
get_url_host​(URL) get_url_host​("https://platform ​.adobe.com/home") platform.adobe.com
get_url_port 返回給定URL的埠。 如果輸入無效,則返回null。
  • URL: 必需 需要從中提取埠的URL。
get_url_port(URL) get_url_port​("sftp://example.com//home/ ​ joe/employee.csv") 22
get_url_path 返回給定URL的路徑。 預設情況下,返回完整路徑。
  • URL: 必需 需要從中提取路徑的URL。
  • 完整路徑(_P): 可選 一個布爾值,它確定是否返回完整路徑。 如果設定為false,則只返迴路徑的結尾。
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的查詢字串,作為查詢字串名稱和查詢字串值的映射。
  • URL: 必需 您試圖從中獲取查詢字串的URL。
  • 錨點: 必需 確定將對查詢字串中的錨點執行什麼操作。 可以是三個值之一:"retain"、"remove"或"append"。

    如果值為「retain」,則錨點將附加到返回的值。
    如果值為"remove",則錨點將從返回的值中刪除。
    如果值為「append」,則錨點將作為單獨的值返回。
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/the​?name=ferret#nose", "append")
{"name": "ferret#nose"}
{"name": "ferret"}
{"name": "ferret", "_anchor_": "nose"}

日期和時間函式

注意

請向左/向右滾動以查看表的完整內容。 有關 date 函式可在 資料格式處理指南

函數 說明 參數 語法 運算式 示例輸出
now 檢索當前時間。 now() now() 2021-10-26T10:10:24Z
timestamp 檢索當前Unix時間。 timestamp() timestamp() 1571850624571
格式 根據指定的格式設定輸入日期的格式。
  • 日期: 必需 要格式化的輸入日期(作為ZonedDateTime對象)。
  • 格式: 必需 要將日期更改為的格式。
格式(日期,格式) 格式(2019-10-23T11:24:00+00:00, "yyyy-MM-dd HH":mm:ss") 2019-10-23 11:24:35
格式 根據指定的格式將時間戳轉換為日期字串。
  • 時間戳: 必需 要格式化的時間戳。 此操作以毫秒為單位。
  • 格式: 必需 希望時間戳成為的格式。
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格式)。
  • 日期: 必需 表示日期的字串。
日期(日期) 日期("2019-10-23 11:24") 「2019-10-23T11:24:00Z」
日期/部分 檢索日期的部分。 支援以下元件值:

"年"
"yyyy"
"yy"

"季度"
"qq"
"q"

"月"
"mm"
"m"

"日常年"
"dy"
"y"

"天"
"dd"
"d"

"周"
"w"
"w"

"工作日"
"dw"
"w"

"小時"
"hh"
"hh24"
"hh12"

"分鐘"
"mi"
"n"

"第二"
"ss"
"s"

"毫秒"
"ms"
  • 元件: 必需 表示日期部分的字串。
  • 日期: 必需 日期,採用標準格式。
date_part​(元件,日期) date_part("MM", date("2019-10-17 11:55:12英吋)) 10
set_date_part 在給定日期替換元件。 接受以下元件:

"年"
"yyyy"
"yy"

"月"
"mm"
"m"

"天"
"dd"
"d"

"小時"
"hh"

"分鐘"
"mi"
"n"

"第二"
"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來誘導。
  • 年: 必需 年份,以四位數字寫。
  • 月: 必需 月份。 允許的值為1到12。
  • 日: 必需 那天。 允許的值為1到31。
  • 小時: 必需 時間。 允許的值為0到23。
  • 分鐘: 必需 一分鐘。 允許的值為0到59。
  • 納秒: 必需 納秒值。 允許的值為0到99999999。
  • 時區: 必需 日期時間的時區。
make_date_time​(YEAR、MONTH、DAY、HOUR、MINUTE、SECOND、NS、TIMEZONE) make_date_time​(2019、10、17、11、55、12、999,「America/Los_Angeles」) 2019-10-17T11:55:12Z
區域_日期_到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

{style=“table-layout:auto”}

層次 — 對象

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
為空 檢查對象是否為空。
  • 輸入: 必需 您嘗試檢查的對象為空。
is_empty(INPUT) is_empty([1, 2, 3])
陣列_到對象 建立對象清單。
  • 輸入: 必需 鍵對和陣列對的分組。
arrays_to_object(INPUT) 需要樣本 需要樣本
到對象 根據給定的平面鍵/值對建立對象。
  • 輸入: 必需 鍵/值對的平面清單。
to_object(INPUT) to_object ​("firstName"、"John"、"lastName"、"Doe") {"firstName": "John", "lastName": "Doe"}
str_to_object 從輸入字串建立對象。
  • 字串: 必需 正在分析以建立對象的字串。
  • VALUE_DELIMITER: 可選 分隔欄位與值的分隔符。 預設分隔符為 :
  • 欄位分隔符: 可選 分隔欄位值對的分隔符。 預設分隔符為 ,
str_to_object ​(STRING, VALUE_DELIMITER, FIELD_DELIMITER) str_to_object("firstName=John,lastName=Doe,phone=123 456 7890", "=", ",") {"firstName": "John", "lastName": "Doe", "phone": "123 456 7890"}
包含鍵 檢查源資料中是否存在對象。 注: 此函式替換已棄用 is_set() 的子菜單。
  • 輸入: 必需 如果源資料中存在要檢查的路徑。
contains_key(INPUT) contains_key("evars.evar.field1")
取消 將屬性值設定為 null。 當您不想將欄位複製到目標架構時,應使用此選項。 nullify() nullify() null
獲取密鑰 解析鍵/值對並返回所有鍵。
  • 對象: 必需 將從中提取鍵的對象。
get_keys(OBJECT) get_keys({"book1"):《傲慢與偏見》,《第二本書》:「1984」) ["book1", "book2"]
get_values 解析鍵/值對並根據給定鍵返回字串的值。
  • 字串: 必需 要分析的字串。
  • 密鑰: 必需 必須提取值的鍵。
  • VALUE_DELIMITER: 必需 分隔欄位和值的分隔符。 如果 null 或提供空字串,此值為 :
  • 欄位分隔符: 可選 分隔欄位和值對的分隔符。 如果 null 或提供空字串,此值為 ,
get_values(STRING, KEY, VALUE_DELIMITER, FIELD_DELIMITER) get_values("firstName - John,lastName - Cena,電話 — 555 420 8692", "-", ",") 約翰

有關對象複製功能的資訊,請參見一節

層次 — 陣列

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
凝聚 返回給定陣列中的第一個非空對象。
  • 輸入: 必需 要查找的第一個非空對象的陣列。
合併(INPUT) coalesce(null、null、null、null、"first"、null、"second") "第一個"
第一 檢索給定陣列的第一個元素。
  • 輸入: 必需 要查找的第一個元素的陣列。
第一個(輸入) first("1"、"2"、"3") "1"
最後 檢索給定陣列的最後一個元素。
  • 輸入: 必需 要查找的最後一個元素的陣列。
last(INPUT) last("1"、"2"、"3" "3"
添加到陣列 將元素添加到陣列的末尾。
  • 陣列: 必需 要添加元素的陣列。
  • 值:要追加到陣列的元素。
add_to_array​(ARRAY, VALUES) 添加到陣列​([「a」、「b」], 'c', 'd') ['a'、'b'、'c'、'd']
連接陣列 將陣列相互組合。
  • 陣列: 必需 要添加元素的陣列。
  • 值:要追加到父陣列的陣列。
join_arrays​(ARRAY, VALUES) join_arrays​([「a」、「b」]。 ['c']。 [「d」、「e」]) ['a', 'b', 'c', 'd', 'e']
到陣列 獲取輸入清單並將其轉換為陣列。
  • INCLUDE_NULLS: 必需 一個布爾值,用於指示是否在響應陣列中包括空值。
  • 值: 必需 要轉換為陣列的元素。
to_array ​(INCLUDE_NULLS, VALUES) to_array(false, 1,null, 2, 3) [1, 2, 3]
大小 返回輸入的大小。
  • 輸入: 必需 您嘗試查找的對象大小。
size_of(INPUT) size_of([1, 2, 3, 4]) 4

邏輯運算子

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
解碼 如果給定一個鍵和一個按陣列拼合的鍵值對清單,則函式將在找到鍵時返回值,或在陣列中存在時返回預設值。
  • 密鑰: 必需 要匹配的密鑰。
  • OPTIONS: 必需 鍵/值對的拼合陣列。 (可選)可以在結尾處放置預設值。
decode(KEY,OPTIONS) decode(stateCode, "ca", "California", "pa", "Pennsylvania", "N/A") 如果給定的stateCode是"ca", "California"。
如果給定的stateCode是"pa", "Pennsylvania"。
如果stateCode與以下項不匹配,則「N/A」。
如果 計算給定的布爾表達式並根據結果返回指定的值。
  • 表達式: 必需 正在計算的布爾表達式。
  • TRUE_VALUE: 必需 如果表達式的計算結果為true,則返回的值。
  • FALSE_VALUE: 必需 如果表達式的計算結果為false,則返回的值。
iif(EXPRESSION、TRUE_VALUE、FALSE_VALUE) iif("s"。equalsIgnoreCase("S")、"True"、"False") "True"

彙總

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
min 返回給定參數的最小值。 使用自然排序。
  • OPTIONS: 必需 可以相互比較的一個或多個對象。
min(OPTIONS) min(3、1、4) 1
max 返回給定參數的最大值。 使用自然排序。
  • OPTIONS: 必需 可以相互比較的一個或多個對象。
最大(OPTIONS) 最大值(3、1、4) 4

類型轉換

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
將字串轉換為BigInteger。
  • 字串: 必需 要轉換為BigInteger的字串。
to_bigint(STRING) to_bigint ​("1000000.34") 1000000.34
到十進位 將字串轉換為Double。
  • 字串: 必需 要轉換為Double的字串。
to_decimal(字串) to_decimal("20.5") 二十點五
至浮點 將字串轉換為浮點。
  • 字串: 必需 要轉換為浮點的字串。
to_float(STRING) to_float("12.3456") 12.34566
到整數 將字串轉換為整數。
  • 字串: 必需 要轉換為整數的字串。
to_integer(STRING) to_integer("12") 12

JSON函式

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
json_to對象 從給定字串反序列化JSON內容。
  • 字串: 必需 要反序列化的JSON字串。
json_to_object​(STRING) json_to_object​({"info":{"firstName":"John","lastName":"Doe"}) 表示JSON的對象。

特別行動

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
uuid/uuid
GUID
生成偽隨機ID。 uuid()
guid()
uuid()
guid()
7c0267d2-bb74-4e1a-9275-3bf4fccda5f4
c7016dc7-3163-43f7-afc7-2e1c9c20633

用戶代理函式

注意

請向左/向右滾動以查看表的完整內容。

函數 說明 參數 語法 運算式 示例輸出
ua_os_name 從用戶代理字串中提取作業系統名稱。
  • USER_AGENT: 必需 用戶代理字串。
ua_os_name​(USER_AGENT) ua_os_name​("Mozilla/5.0(iPhone;CPUiPhoneOS 5_1_1如MacOS X)AppleWebKit/534.46(KHTML如Gecko)Version/5.1 Mobile/9B206 Safari/7534.48.3") iOS
ua_os_version_major 從用戶代理字串中提取作業系統的主要版本。
  • USER_AGENT: 必需 用戶代理字串。
ua_os_version_major​(USER_AGENT) ua_os_version_major ​s("Mozilla/5.0(iPhone;CPUiPhoneOS 5_1_1如MacOS X)AppleWebKit/534.46(KHTML如Gecko)Version/5.1 Mobile/9B206 Safari/7534.48.3") iOS 5
ua_os_version 從用戶代理字串中提取作業系統的版本。
  • USER_AGENT: 必需 用戶代理字串。
ua_os_version​(USER_AGENT) ua_os_version​("Mozilla/5.0(iPhone;CPUiPhoneOS 5_1_1如MacOS X)AppleWebKit/534.46(KHTML如Gecko)Version/5.1 Mobile/9B206 Safari/7534.48.3") 5.1.1
ua_os_name_version 從用戶代理字串中提取作業系統的名稱和版本。
  • USER_AGENT: 必需 用戶代理字串。
ua_os_name_version​(USER_AGENT) ua_os_name_version​("Mozilla/5.0(iPhone;CPUiPhoneOS 5_1_1如MacOS X)AppleWebKit/534.46(KHTML如Gecko)Version/5.1 Mobile/9B206 Safari/7534.48.3") iOS 5.1.1
ua_agent_version 從用戶代理字串中提取代理版本。
  • USER_AGENT: 必需 用戶代理字串。
ua_agent_version​(USER_AGENT) ua_agent_version​("Mozilla/5.0(iPhone;CPUiPhoneOS 5_1_1如MacOS X)AppleWebKit/534.46(KHTML如Gecko)Version/5.1 Mobile/9B206 Safari/7534.48.3") 5.1
ua_agent_version_major 從用戶代理字串中提取代理名稱和主要版本。
  • USER_AGENT: 必需 用戶代理字串。
ua_agent_version_major​(USER_AGENT) ua_agent_version_major​("Mozilla/5.0(iPhone;CPUiPhoneOS 5_1_1如MacOS X)AppleWebKit/534.46(KHTML如Gecko)Version/5.1 Mobile/9B206 Safari/7534.48.3") Safari 5
ua_agent_name 從用戶代理字串中提取代理名稱。
  • USER_AGENT: 必需 用戶代理字串。
ua_agent_name​(USER_AGENT) ua_agent_name​("Mozilla/5.0(iPhone;CPUiPhoneOS 5_1_1如MacOS X)AppleWebKit/534.46(KHTML如Gecko)Version/5.1 Mobile/9B206 Safari/7534.48.3") Safari
ua_device_class 從用戶代理字串中提取設備類。
  • USER_AGENT: 必需 用戶代理字串。
ua_device_class​(USER_AGENT) ua_device_class​("Mozilla/5.0(iPhone;CPUiPhoneOS 5_1_1如MacOS X)AppleWebKit/534.46(KHTML如Gecko)Version/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

在上例中, citystate 屬性也會在運行時自動攝取,因為 address 對象映射到 addr。 如果要建立 line2 XDM結構中的屬性,您的輸入資料還包含 line2address 對象,則也會自動攝入該對象,而無需手動更改映射。

要確保自動映射工作,必須滿足以下先決條件:

  • 應映射父級對象;
  • 必須在XDM架構中建立新屬性;
  • 新屬性在源架構和XDM架構中應具有匹配的名稱。

如果未滿足任何先決條件,則必須使用資料準備手動將源架構映射到XDM架構。

本頁內容