使用取代轉換資料

使用簡單的樣式比對或正規表示式 (regex) 轉換資料欄中的資料。例如,在 State 資料欄中,可以將 CA 變更為 California。

您可以使用任何 Perl 相容的正規表示式 (PCRE),又稱為 regex 表示式。轉換會套用至資料集內每個適用的資料列。
  1. 在「首頁」上,開啟資料集或工作簿。
    • 將游標停駐於資料集上,按一下動作 (動作功能表省略符號圖示),然後選取開啟。在資料圖表結合圖表中,於資料來源上按一下滑鼠右鍵,然後按一下開啟以顯示轉換編輯器。
    • 將游標停駐於包含資料集的工作簿上,按一下動作 (動作功能表省略符號圖示),然後選取開啟,接著按一下資料。在資料圖表結合圖表中,於資料來源上按一下滑鼠右鍵,然後按一下開啟以顯示轉換編輯器。

    註:

    Oracle Analytics 會為單一表格資料集顯示「資料圖表」,或為多表格資料集顯示「結合圖表」。
  2. 選取要轉換的文字資料欄,或將游標停駐於該文字資料欄上。
  3. 按一下品質磚塊底部的選項,然後按一下取代
    秘訣:若要同時取代多個值,請使用取代值清單選項。
  4. 在「取代」步驟編輯器中,指定比對值的方式。例如:
    • 按一下使用正規表示式,以使用複雜正規表示式 (regex) 進行比對。
    • 按一下比對整個值,以將 "male" 變更為 "M" 而不將 "female" 變更為 "feM"。
  5. 要取代的字串欄位和新字串欄位中,指定要搜尋並取代的文字或正規表示式 (區分大小寫)。
    範例:
    • 若要將 "2553 Bolman Court" 變更為 "2553 #Bolman# #Court#",請選取使用正規表示式,然後在要取代的字串欄位中輸入 ([A-Za-z]+),並在新字串欄位中輸入 #$1#
    • 若要將 "male" 變更為 "M",請選取比對整個值,在要取代的字串欄位中輸入 male,並在新字串欄位中輸入 M這會將 "male" 變更為 "M" ,但不會將 "female" 變更為 "feM"。

    在這兩個欄位都輸入值之後,您會在預覽窗格中見到轉換後的資料。請調整取代選項,直到您在預覽窗格中獲得想要的轉換為止。
  6. 按一下新增步驟
    Oracle Analytics 會新增一個步驟至準備命令檔面板。
  7. 若要儲存資料準備變更並將變更套用至資料,請按一下儲存

使用正規表示式取代轉換範例

以下是幾個使用正規表示式 (regex) 轉換資料的範例。

在這些範例中,「搜尋表示式」會顯示要在要取代的字串欄位輸入的值,而「取代值」則顯示要在新字串欄位輸入的值。

表格 3-1 取代轉換範例

搜尋表示式 取代值 原始文字 取代後的文字 附註
@([a-z]+)(?=\.[a-z]{3}) @example MichelePFalk@yahoo.com MichelePFalk@example.com 此範例會取代電子郵件地址中的網域詳細資訊。
^Gray|Grey$ Silver

Grey

Gray

Graystone

Silver

Silver

Graystone

^$ 字元表示只尋找整個字串相符的項目。分隔號是 OR 正規表示式,因此在本例中,正規表示式會尋找 "Gray" 或 "Grey" 並以 "Silver" 取代。

Graystone 字串並未轉換,因為正規表示式只尋找整個值相符的項目。

\d+ 9999

8398 Park Street

123 Oracle Parkway

9999 Park Street

9999 Oracle Parkway

此正規表示式會尋找一個 " \d" 或多個 "+" 數字,然後以 "9999" 取代。原始文字若只有三個數字,取代也可發揮作用。
([A-z]+)(\d+) $2

UA101654

US829383

101654

829383

此正規表示式會尋找後面接著一個 " \d" 或多個 "+" 數字的一個 "[A-z]" 或多個 "+" 連續字母 - 兩個表示式都以括弧為界,可擷取兩個群組 - 第一個 ([A-z]) 和第二個 (\d+) - 這些群組會自動計算數目,然後透過對第二個群組使用貨幣符號 (例如 "$2"),即可使用這些群組進行取代。
([A-z]+)(\d+) Postal Code: $2

UA101654

US829383

Postal Code: 101654

Postal Code: 829383

此範例使用與前一個範例相同的比對表示式,唯一的不同在於,除了群組之外,它還示範如何插入自己的取代文字。文字的插入位置可以在所回收的比對群組之前和之後。