TEXTBEFORE 函數是 Microsoft Excel 365 中的文本處理函數之一,專門用來從指定分隔符之前提取文本。這對於從結構化文本中獲取特定部分非常有用,尤其適合處理電子郵件地址、URL、文件路徑等。
? TEXTBEFORE 函數語法
TEXTBEFORE(text, delimiter, [instance_num], [match_mode], [search_mode])
參數解釋:
- text:必須參數,指定要從中提取文本的原始文本。
- delimiter:必須參數,指定分隔符,函數會查找並從該分隔符之前提取文本。
- instance_num:可選,指定要從文本中查找的分隔符的實例編號。默認值為
1(即查找第一個分隔符)。 - match_mode:可選,指定匹配模式。
0表示精確匹配,1表示區分大小寫匹配,默認為0。 - search_mode:可選,指定查找的方向。
1表示從左到右查找(默認),-1表示從右到左查找。
? TEXTBEFORE 函數應用範例
1️⃣ 提取分隔符前的文本
假設你有一個文本 apple,banana,orange,如果你想提取逗號前的部分(即 apple):
=TEXTBEFORE("apple,banana,orange", ",")
? 解釋:這將返回逗號前的所有文本,結果為 apple。
2️⃣ 提取第二個分隔符前的文本
如果你希望提取第二個逗號前的文本(即 apple,banana):
=TEXTBEFORE("apple,banana,orange", ",", 2)
? 解釋:這將返回第二個逗號前的所有文本,結果為 apple,banana。
3️⃣ 提取最後一個分隔符前的文本
如果你希望從最後一個分隔符(即最後一個逗號)之前提取文本,可以將 search_mode 設置為 -1,並從右邊開始查找:
=TEXTBEFORE("apple,banana,orange", ",", 1, 0, -1)
? 解釋:這將從右邊開始查找逗號,並返回逗號前的所有文本,結果為 apple,banana。
4️⃣ 提取指定字符前的文本
假設有一個電子郵件地址 [email protected],並且你希望提取 @ 符號前的用戶名(即 user):
=TEXTBEFORE("[email protected]", "@")
? 解釋:這將提取 @ 符號前的所有文本,結果為 user。
5️⃣ 提取文本中的第一個空格前的部分
如果你有一個名字 John Doe,並且想要提取空格前的部分(即 John):
=TEXTBEFORE("John Doe", " ")
? 解釋:這將返回空格前的所有文本,結果為 John。
6️⃣ 使用不同的匹配模式
假設有一個文本 [email protected],並且你希望查找小寫字母 d 前的所有內容(區分大小寫):
=TEXTBEFORE("[email protected]", "d", 1, 1)
? 解釋:這將查找小寫字母 d 並提取其前的文本,結果為 John,因為 match_mode 設為 1,區分大小寫。
? TEXTBEFORE 函數的實際應用情景
1️⃣ 從 URL 中提取域名
如果你有一個 URL https://www.example.com/path/to/page,並希望提取 URL 中的域名部分(即 https://www.example.com):
=TEXTBEFORE("https://www.example.com/path/to/page", "/")
? 解釋:這將提取第一個斜線 / 前的所有文本,結果為 https://www.example.com。
2️⃣ 從文件路徑中提取文件夾路徑
如果你有一個文件路徑 C:\Users\Documents\file.txt,並希望提取文件夾路徑部分(即 C:\Users\Documents):
=TEXTBEFORE("C:\Users\Documents\file.txt", "\")
? 解釋:這將提取第一個反斜杠 \ 前的所有文本,結果為 C:。
3️⃣ 提取電子郵件的域名
如果你有一個電子郵件地址 [email protected],並且希望提取 @ 符號前的域名部分(即 example):
=TEXTBEFORE("[email protected]", "@")
? 解釋:這將提取 @ 符號前的所有文本,結果為 example。
? 總結
✅ TEXTBEFORE 函數可以從指定的分隔符之前提取文本。
✅ 它支持提取多個分隔符之前的文本,並且可以指定查找方向、匹配模式,甚至支持從右邊開始查找。
✅ 這個函數對於處理文本數據、URL、文件路徑、電子郵件地址等非常有用。