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

ExtractRegExGroup - 指令碼與圖表函數

ExtractRegExGroup() 會使用指定的複合規則運算式模式從輸入字串運算式中擷取文字。使用該函數時,請指定要在複合 Regex 中使用的群組。如果未找到相符項,則該函數將傳回空值。

如果在 LOAD 陳述式中使用 ExtractRegExGroup() 函數並且省略 field_no,則函數將傳回多筆記錄。如果使用 ExtractRegExGroup() 載入數個欄位,則會建立所有組合的 Cartesian 產品。

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

語法:  

ExtractRegExGroup (text, regex, group [, field_no])

傳回的資料類型: 字串

引數
引數 描述
text 包含要在傳回值中擷取之文字的字串運算式。
regex 用於擷取文字的規則運算式。
group

在複合規則運算式的情況下,群組的編號。

如果規則運算式僅包含一個群組,請改用 ExtractRegEx() 函數。或者,使用 ExtractRegExGroup()group 值為 0

您可以指定負 group 值以從右到左搜尋相符項。

field_no

要擷取之相符項的編號。當可能在文字中找到規則運算式的多個相符項時,這非常有用。例如,指定值 4 以擷取第四個相符項。

此為選用引數。如果未指定,則預設為 1

函數範例
範例 結果
ExtractRegExGroup('abc123 def456','([a-z]+)([0-9]+)',1) 傳回 abc (第一個相符項的第一個群組)。
ExtractRegExGroup('abc123 def456','([a-z]+)([0-9]+)',1,2) 傳回 def (第二個相符項的第一個群組)。
ExtractRegExGroup('abc123 def456','([a-z]+)([0-9]+)',2) 傳回 123 (第一個相符項的第二個群組)。
ExtractRegExGroup('abc123 def456','([a-z]+)([0-9]+)',2,2) 傳回 456 (第二個相符項的第二個群組)。

使用情境

您可以使用 Extract RegEx() 從可能還包含其他資訊之資料 (例如,自由文字或 JSON 字串) 中擷取想要隔離的資訊。例如︰

  • 從文字中擷取電子郵件地址、電話號碼、帳號和其他資訊。

  • 從文字中擷取數值 (例如貨幣)。

  • 標準化文字或數字資料的格式。

範例 1 – 用於剖析交易代碼的載入指令碼

範例 2 – 用於擷取業務聯絡資訊的載入指令碼

範例 3 – 用於從 ISBN 代碼擷取元件的載入指令碼

範例 4 – 用於擷取業務聯絡資訊的圖表運算式 (使用 ExtractRegEx() 比較)

範例 5 – URL 剖析 (使用 ExtractRegEx() 比較)

此頁面是否對您有幫助?

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