REGEXEXTRACT 函數

套用到
Microsoft 365 Excel Mac 版 Microsoft 365 Excel

REGEXEXTRACT 函式允許你根據提供的正則表達式從字串中擷取文字。 你可以從第一場比賽中抽取所有比賽或吃掉的群組。

語法

REGEXEXTRACT 函式會擷取與該模式相符的文字串。

REGEXEXTRACT 函式的語法如下:

REGEXEXTRACT (文字、圖案、[return_mode]、[case_sensitivity])

引數 描述
text
(必要)
就是你想從中提取字串的文字或參考,裡面包含文字的儲存格。
圖樣
(必要)
正則表達式 (「正則表達式」) 描述你想提取的文字模式。
return_mode 一個數字,用來指定你想提取哪些字串。 預設情況下,回傳模式是 0。 可能的數值如下:
0: 回傳第一個與模式相符的弦
1: 將所有符合模式的字串以陣列形式回傳
2: 將第一場比賽的吃子群作為陣列返回
註: 捕獲群是正則表達式模式的一部分,周圍有括號「 (...) 」。 它們允許你單獨退回同一場比賽的不同部分。
case_sensitivity 判斷匹配是否區分大小寫。 預設情況下,匹配是區分大小寫的。 請輸入下列其中一項:
0: 大小寫區分
1: 大小寫不區分

注意

  • 最簡單的模式是你想要匹配的字面文字。 例如,要匹配「Match Me」字樣,可以使用「Match Me」這個圖案。

  • 也可以使用稱為「tokens」的符號,這些符號可以與多種字元相匹配。 以下是一些簡單的標記供參考:

  • 「[0-9]」:任意數字

  • 「[a-z]」:位於 A 到 Z 範圍內的字元

  • 「.」:任何字元

  • 「A」:A字元

  • 「a*」:零個或多個「a」

  • 「A+」:一個或多個「A」

  • 所有此函式的正則表達式,以及 REGEXTESTREGEXREPLACE 都使用 PCRE2 的正則表達式「風味」。

  • REGEXEXTRACT 總是回傳文字值。 你可以用 VALUE 函數將這些結果轉換回數字。

範例

複製範例資料,並將其貼到新 Excel 工作表的儲存格 A1 中。 如有需要,您可以調整欄寬來查看所有資料。

範例 1

以大寫字母為例的「[A-Z][a-z]+」擷取名稱。

資料
迪倫·威廉斯
公式
=REGEXEXTRACT (A2,“[A-Z][a-z]+”)
=正解抽取 (A2,“[A-Z][a-z]+”,1)

下圖顯示結果。

REGEXEXTRACT 用於利用 [A-Z][a-z]+ 模式提取名稱資料

範例 2

根據電話號碼結構擷取,模式為「[0-9 () ]+ [0-9-]+」

資料
索尼婭·里斯 (378) 555-4195
安吉爾·布朗 (878) 555-8622
布雷克·馬丁 (437) 555-8987
威廉·柯比 (619) 555-4212
艾弗里·史密斯 (579) 555-5658
帕克·瓊斯 (346) 555-0925
利亞姆·斯莫爾 (405) 555-0887
霍莉·里斯 (666) 555-1872
公式
=REGEXEXTRACT (A2,“[0-9 () ]+ [0-9-]+”,1)

以下圖示展示了結果。

REGEXEXTRACT 用於從混合文字中擷取多個特定格式的電話號碼,模式為 [0-9 () ]+ [0-9-]+