1. 程式人生 > >動態長度字串的解析拆分問題

動態長度字串的解析拆分問題

問題描述

將一連串“ID1:value1,ID2:value2,...,IDn:valuen”(n動態可變,且IDi無固定對應關係)的字串,解析為如下固定資料形式

舉例:

解析為

解決方案

1、資料分列

【資料】->【分列】

說明:此處需要將資料格式選為【文字】,防止Excel自動完成計算

分列完成後得到以下資料結果

2、資料處理

1)獲取ID在每行分列資料的位置

 萬用字元+match函式

H2=IFERROR(MATCH(I$1&":*",$B2:$G2,0),0)

2)獲取ID在每行分列資料的內容

index函式

H3=IFERROR(INDEX($B2:$G2,1,H2),0)

3)獲取ID對應的value值

H4=RIGHT(H3,LEN(H3)-FIND(":",H3))

4)公式整合,拉表得到最後的拆分結果

I2=IFERROR(RIGHT(IFERROR(INDEX($B2:$G2,1,IFERROR(MATCH(I$1&":*",$B2:$G2,0),0)),0),LEN(IFERROR(INDEX($B2:$G2,1,IFERROR(MATCH(I$1&":*",$B2:$G2,0),0)),0))-FIND(":",IFERROR(INDEX($B2:$G2,1,IFERROR(MATCH(I$1&":*",$B2:$G2,0),0)),0))),0)

3、擴充套件性預留

字串越長,只需修改單行資料的選擇區域範圍,即可批量得到調整後的結果