Chapter 9. 函式 (四):字串處理 › 9.2 分割與合併字串
9.2 分割與合併字串
在 Google Sheets 中與字串分割、合併相關之函式如下:
- TRIM:移除多餘的空格
語法 | TRIM (文字) |
輸入 | 文字:要移除空格的字串。 |
輸出 | 移除 文字 中所有的空格,只在字詞之間留下一個半形空格,即開頭、結尾、字串中重複的空格都會移除。 |
- SPLIT:分割字串
語法 | SPLIT (文字, 分隔符號, [逐個分割], [移除空白文字]) |
輸入 |
|
輸出 | 將 文字 根據 分隔符號 切割,輸出會有多個欄位。 |
- CONCAT / &:將兩個值連接在一起
語法 |
|
輸入 | 值_1 / 值_2:要連接在一起的字串,可以是數字或文字。 |
輸出 | 將兩個值合併成字串形式,即 值_1值_2。在第 6.6 節在 COUNTIF 等函式的條件中 & 連接儲存格內容即是此道理。 |
- JOIN:使用指定分隔符號合併多個字串
語法 | JOIN ([分隔符號], 值或陣列_1, [值或陣列_2,...]) |
輸入 |
|
輸出 | 所有 值或陣列_n 依序使用 分隔符號 連接後的結果。 |
- CONCATENATE / TEXTJOIN:合併字串
語法 |
|
輸入 |
|
輸出 |
若 CONCATENATE / TEXTJOIN 的輸入是儲存格範圍,且寬度和高度均大於 1 時,會先連接列再連接欄,例如 =CONCATENATE(A1:B2) 的合併順序為 A1 ⭢ B1 ⭢ A2 ⭢ B2。 |
以下使用六個範例說明上述函式的用法,以及搭配其他函式使用的常見方式,其中已命名範圍「ptt看板範例」的內容為 "Baseball 2607 棒球 ◎[棒球] Baseball is life":
- 移除 ptt看板範例 多餘的空格
公式
=TRIM(ptt看板範例)
解說
使用 TRIM 即可,輸出會將 Baseball 和 is 中間的空格移除至剩下一個。
- 將 ptt看板範例 的內容使用空格分割成多欄
公式
=SPLIT(ptt看板範例," ")
解說
目前輸出共有七欄。若在此將 移除空白文字 設為 FALSE,即 =SPLIT(ptt看板範例," ",,FALSE),則輸出會多一欄空字串。兩者的輸出分別如下:

- 將 ptt看板範例 的內容使用「Baseball」分割成多欄
公式
=SPLIT(ptt看板範例,"Baseball")
解說
因為 逐個分割 預設為 TRUE,所以也會將 is life 的 s / l / e 當作分隔符號使用,最後輸出共有四欄,若將 逐個分割 設為 FALSE,即 =SPLIT(ptt看板範例,"Baseball",FALSE),就只會把 Baseball 當作分隔符號,此時輸出就只會有兩欄?兩者的輸出分別如下:

- 取得 B. 分割後的以下資訊:(1) 共有幾個字串、(2) 第二個字串、(3) 共出現幾次 Baseball、(4) is 出現在第幾個元素
公式
(1) =COLUMNS(SPLIT(ptt看板範例," "))
(2) =INDEX(SPLIT(ptt看板範例," "),2)
(3) =COUNTIF(SPLIT(ptt看板範例," "),"Baseball")
(4) =MATCH("is",SPLIT(ptt看板範例," "),0)
解說
SPLIT 後的結果有多欄,即為陣列,可以搭配其他輸入為陣列的函式使用。
- 將 ptt看板範例 前面加上「看板名稱:」
公式
- =CONCAT("看板名稱:",ptt看板範例)
- ="看板名稱:"&ptt看板範例
解說
可使用 CONCAT / & 將兩字串連接。
- 將 ptt熱門看板!A2:A4 的內容合併,其合併的分隔符號為 CHAR(10)
公式
- =CONCATENATE('ptt熱門看板'!A2,CHAR(10),'ptt熱門看板'!A3,CHAR(10),'ptt熱門看板'!A4)
- ='ptt熱門看板'!A2&CHAR(10)&'ptt熱門看板'!A3&CHAR(10)&'ptt熱門看板'!A4
- =JOIN(CHAR(10),'ptt熱門看板'!A2:A4)
- =TEXTJOIN(CHAR(10),,'ptt熱門看板'!A2:A4)
解說
- CHAR(10) 是在儲存格中換行的符號,CHAR 是根據 Unicode 編碼表將數字轉換成字元,在此不詳細介紹。
- 可使用 CONCATENATE / & 完成,但要重複輸入兩次 CHAR(10)。
- 可使用 JOIN / TEXTJOIN,兩函式最主要的差別是 TEXTJOIN (1) 可以忽略空白、(2) 支援多欄多列的輸出。但在此 'ptt熱門看板'!A2:A4 並無空白、也不是多欄多列,因此兩者的用法相同。