跳轉到

REGEXEXTRACT

類別: MS Excel 相容函數 · 原生導入: Microsoft 365

從文字中擷取正規表示式的相符項。

語法

=REGEXEXTRACT(文字, 模式, [傳回模式], [區分大小寫])

引數

引數 必要 說明
文字 必要 來源文字
模式 必要 正規模式
傳回模式 選用 0 首個,1 全部,2 擷取群組
區分大小寫 選用 0 區分(預設),1 忽略

傳回

傳回模式 0 傳回第一個相符的文字(純量),1 傳回所有相符項(直向單欄陣列,溢出),2 傳回第一個相符項的擷取群組(橫向單列陣列,溢出)。若沒有相符項(包含模式 2 下沒有群組的情況)傳回 #N/A;正規表示式無效時傳回 #VALUE!。

範例

公式 結果 說明
=REGEXEXTRACT("abc123def45","\d+") 123 第一個相符項
=REGEXEXTRACT("abc123def45","\d+",1) {123;45} 所有相符項(直向)
=REGEXEXTRACT("2026-08-01","(\d+)-(\d+)",2) {2026,08} 擷取群組(橫向)

備註

  • 正規表示式語法為 std::wregex 的 ECMAScript(可能與原生 365 的 PCRE2 略有差異)。
  • text·pattern 可指定陣列並逐元素計算,以相同形狀的陣列溢出傳回(錯誤元素原樣傳回);陣列 text 與傳回模式 1·2 併用時,各元素結果會降級為第一個相符項。
  • 相關函數:REGEXTEST、REGEXREPLACE
  • 支援: Excel 2010+。在沒有原生函數的舊版 Excel 中以 REGEXEXTRACT 原名註冊(可直接替換),在已內建原生函數的新版 Excel 中則註冊為 EG.REGEXEXTRACT