我想從單個單元格中的很長的字符串中提取某些數據片段。爲了這個練習,這是我在單元格A1中的數據。Excel中,重複字符串,單個單元格迭代
一個:2:{S:15: 「info_buyRequest」;一個:5:{S:4: 「uenc」; S:252: 「WN0aW9uYWwuaHRlqdyZ2dC1hdD0lN0JhZHR5cGUlN0QmdnQtcHRpPSU3QmFkd29yZHNfcHJvZHVjdHRhcmdldGlkJTdEJiU3Qmlnbm9y,」; S:7: 「產品」; S :4: 「1253」; S:8: 「form_key」; S:16: 「wyfg89N」; S:7: 「選項」;一個:6:{I:10144; S:5: 「73068」; I: 10145; S:5: 「63085」; I:10141; S:5: 「73059」; I:10143; S:5: 「73064」; I:13340; S:5: 「99988」; I:10142; S:5: 「73063」;} S:3: 「數量」; S:1: 「1」;} S:7: 「選項」;一個:6:{I:0;一個:7:{S: 5: 「標籤」; S:5: 「彩色」; S:5: 「值」; S:11: 「白」; S:11: 「print_value」; S:11: 「白」; S:9: 「option_id」; S:5: 「10144」; S:11: 「option_type」; S:9: 「DROP_DOWN」; S:12: 「請將option_value」; S:5: 「73068」; S:11:「custom_view 「; b:0;} I:1;一個:7:{S:5:」 標籤 「; S:4:」 裁剪 「; S:5:」 值 「; S:11:」 黑色「; S: 11: 「print_value」; S:11: 「黑色」; S:9: 「option_id」; S:5: 「10145」; S:11: 「option_type」; S:9: 「DROP_DOWN」; S:12: 「請將option_value」; S:5: 「63085」; S:11: 「custom_view」; b:0;} I:2;一個:7:{S:5: 「標籤」; S:7: 「材料」; S:5: 「值」; S:15: 「乙烯基」; S:11: 「print_value」; S:15: 「乙烯基」; S:9:「option_id 「; S:5:」 10141 「; S:11:」 option_type 「; S:9:」 DROP_DOWN 「; S:12:」 請將option_value 「; S:5:」 73059 「; S:11:」 custom_view「; b:0;} i:3; a:7:{s:5:「label」; s:6:「Orientation」; s:5:「value」; s:17:「Left Side」; s:11 :「print_value」; s:17:「Left Side」; s:9:「option_id」; s:5:「10143」; s:11:「option_type」; s:9:「drop_down」; s:12: 「請將option_value」; S:5: 「73064」; S:11: 「custom_view」; b:0;} I:4;一個:7:{S:5: 「標籤」; S:12: 「表」; S:5: 「值」; S:16:「YES!添加表「; s:11:」print_value「; s:16:」YES! Add Table「; s:9:」option_id「; s:5:」13340「; s:11:」option_type「; s:9:」drop_down「; s:12:」option_value「; s:5:」99988 「; S:11:」 custom_view 「; b:0;} I:5;一個:7:{S:5:」 標籤 「; S:8:」 送貨 「; S:5:」 值「; S: 20:「前門送貨」; s:11:「print_value」; s:20:「前門送貨」; s:9:「option_id」; s:5:「10142」; s:11:「option_type」; S:9: 「DROP_DOWN」; S:12: 「請將option_value」; S:5: 「73063」; S:11: 「custom_view」; b:0;}}}
最終的結果,將是分開的彩色,修剪,材料方位等
我使用下式的值是這樣的:
=MID(LEFT(A4,FIND("print_value",A4)-9),FIND("Color",A4)+25,LEN(A4))
這基本上看起來在兩點之間,並修剪脂肪。它可以工作,但只適用於「print_value」的第一次迭代。如果我要使用此搜索「修剪」...
=MID(LEFT(A4,FIND("print_value",A4)-9),FIND("Trim",A4)+25,LEN(A4))
...我得到一個空的結果。發生這種情況是因爲print_value重複且不是字符串唯一。 Excel不明白將其功能應用於什麼點,並且本身就是這樣。
儘管這個字符串中有獨特的因素,我可以將自己附加到(並達到期望的結果),但我不能使用它們,因爲它們不會一致,並且在應用於其他應用時會使公式無用細胞。
這就是說,這裏是我需要的。在這個公式中,我需要一種方法來A)告訴公式哪個迭代要找到print_value,或者B)將print_value改爲print_value(1,2,3,4等),然後運行我的修剪公式。在此基礎上link
您還沒有明確地定義您的需求以使用正則表達式。但是,例如,如果您運行一個正則表達式來查找針對您的數據的'print_value',則會得到一個以'print_value'開頭的六個項目的匹配集合,並且返回您想要的任何一個的微不足道的或者它你想要的。再次,在你的例子中,有'Color'這個單詞的ZERO實例,它跟隨着任何'print_value'實例 –