跳到主要內容 跳至補充內容

SubFieldRegEx - 指令碼與圖表函數

SubFieldRegEx() 會使用指定的規則運算式模式作為分隔符號,從輸入字串運算式中擷取文字。如果未找到相符項,則該函數將傳回空值。

此函數執行區分大小寫的 Regex 操作。您也可以使用變體 SubFieldRegExI() 來執行不區分大小寫的 Regex 操作。

語法:  

SubFieldRegEx (text, regex_delimiter [, field_no])

傳回的資料類型: 字串

引數
引數 描述
text 要在其中搜尋規則運算式模式的輸入字串文字。
regex_delimiter 包含要用作分隔符號之規則運算式的字串運算式。您可以在同一規則運算式模式中指定多個分隔符號,並用 | (垂直線) 字元進行分隔。
field_no

表示要擷取之細分編號的整數值。例如,指定值 4 以擷取第四個細分。此為選用引數。

無論該函數是在載入指令碼還是圖表運算式中使用,以下內容都適用:

  • 如果 field_no 為正,則函數將傳回一個值,從左到右識別相符項。

  • 如果 field_no 為負,則函數將傳回一個值,從右到左識別相符項。

當在載入指令碼中使用該函數時:

  • 如果在 LOAD 陳述式中使用 SubFieldRegEx() 函數且省略 field_no,則函數會產生與相符項一樣多的記錄。

  • 如果使用 SubFieldRegEx() 載入數個欄位且所有項均未指定 field_no 引數,則會建立所有組合的 Cartesian 產品。

當在圖表運算式中使用該函數時:

  • 如果省略 field_no,則預設值為 1

函數範例
範例 結果
SubFieldRegEx('a,b c;1 2,3',' |,|;', 1) 傳回 a。在此範例中,指定了三個分隔符號 (空格、逗號和分號)。
SubFieldRegEx('a;b;c;1;2;3',';', 2) 傳回 b。在本案例中,僅指定了一個分隔符號 (分號)。
SubFieldRegEx('a,b c;1 2,3',' |,|;', 4) 傳回 1

使用情境

您可以使用 SubFieldRegEx() 從分隔清單中擷取多個單獨的值。例如,如果您有一個逗號分隔清單包含在較大自然語言區塊中,則可以使用此函數將清單中的每個單獨值隔離到資料模型中的新記錄中。

範例 1 – 用於依交易分隔標記的載入指令碼

範例 2 – 用於依交易分隔標記的圖表運算式

此頁面是否對您有幫助?

若您發現此頁面或其內容有任何問題——錯字、遺漏步驟或技術錯誤——請告知我們可以如何改善!