反馈已提交

网络繁忙

截取多次出現的指定字元後的內容

1. 概述

1.1 預期效果

使用者有時需要截取欄位中多次出現的某個字元指定位置的字元。

例如使用者有欄位長度不同的字元,需要截取最後一個_後的字元,如下圖所示:

或者使用者需要截取 A|B|C 欄位中 B 欄的值,例如使用者需要截取所有學歷資訊,如下圖所示:

1.2 實現思路

使用 INDEXOFFINDMIDSUBSTITUTERIGHT 等函式組合實現截取欄位。

2. 截取最後一個指定字元後的字元

範例資料:截取多次出現的字元後的內容.xlsx

上傳範例資料至 FineBI 中,如下圖所示:

2.1 建立分析主題

建立分析主題,上傳下載的範例資料,預設勾選所有欄位,如下圖所示:

2.2 截取指定字元

2.2.1 方法一

新增「新增欄」,命名為「截取最後一個_後的字元」,輸入公式INDEXOF(SPLIT(欄位,"_"),LEN(SPLIT(欄位,"_"))-1),點選「確定」,如下圖所示:

注:公式框中的函式、欄位都需要點選左側的選擇區域選擇,不能手動輸入。

公式說明:

公式
說明結果
SPLIT(欄位,"_")將欄位按照_分割成陣列

分割前:a_b_c

分割後:a,b,c

LEN(SPLIT(欄位,"_"))-1

計算欄位按照_分割後的陣列數-1


例如 a_b_c 的計算結果為 2

INDEXOF(SPLIT(欄位,"_"),LEN(SPLIT(欄位,"_"))-1)

傳回SPLIT()分割後陣列在最後一個_後的字元例如 a_b_c 的計算結果為 c

2.2.2 方法二

1)新增「新增公式欄」,計算「計算欄位按照_分割後的字元數」,輸入公式:LEN(SPLIT(欄位,"_")),例如 a_b_c 的計算結果為 3 ,如下圖所示:

2)新增「新增公式欄」,計算「將最後一個_更換為-」,輸入公式:SUBSTITUTE(欄位,"_","-",LEN(SPLIT(欄位,"_"))-1),如下圖所示:

3)新增「新增公式欄」,計算「從第一個字元開始尋找-所在的位置」,輸入公式:FIND("-",SUBSTITUTE(欄位,"_","-",LEN(SPLIT(欄位,"_"))-1),1),如下圖所示:

4)新增「新增公式欄」,命名為「計算最後一個_後的字元數」,輸入公式:LEN(欄位)-FIND("-",SUBSTITUTE(欄位,"_","-",LEN(SPLIT(欄位,"_"))-1),1),如下圖所示:

5)新增「新增公式欄」,提取欄位中最後一個_後的字元,命名為「截取指定字元」,輸入公式RIGHT(欄位,LEN(欄位)-FIND("-",SUBSTITUTE(欄位,"_","-",LEN(SPLIT(欄位,"_"))-1),1)),如下圖所示:

2.3 效果展示

詳情參見本文 1.1 節。

3. 截取A|B|C 欄位中 B 列的值

注:B 列每筆資料欄位長度不一致。

範例資料:招聘資訊.xlsx

上傳範例資料至 FineBI 中,如下圖所示:

3. 建立分析主題

建立分析主題,上傳下載的範例資料,預設勾選所有欄位,如下圖所示:

3.2 截取指定字元

新增「新增公式欄」,命名並輸入公式:INDEXOF(SPLIT(地區學歷人數,"|"),1) ,點選「確定」,如下圖所示:

注:公式框中的函式、欄位都需要點選左側的選擇區域選擇,不能手動輸入。

公式說明:

公式
說明
SPLIT(地區學歷人數,"|")

將地區學歷人數欄位根據 | 字元進行劃分

例如:「深圳|本科|招5人」變成「深圳,本科,招5人」

INDEXOF(SPLIT(地區學歷人數,"|"),1)

傳回劃分結果字串第二個位置上的內容

例如:「深圳,本科,招5人」傳回「本科」

3.2 效果展示

詳情參見本文 1.1 節。

更多截取欄位內容詳情參見:欄位分欄

附件列表


主题: 進階學習
已经是第一篇
已经是最后一篇
  • 有帮助
  • 没帮助
  • 只是浏览
中文(繁體)

售前咨询电话

400-811-8890转1

在线技术支持

在线QQ:800049425

热线电话:400-811-8890转2

总裁办24H投诉

热线电话:173-1278-1526

文 档反 馈

鼠标选中内容,快速反馈问题

鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

不再提示

10s后关闭