我在我的一个excel字段中有这个字符串:
"a:3:{
i:0;
a:1:{s:10:"Adult Name";s:11:"Mohamed";}
i:1;
a:1:{s:10:"Adult Name";s:11:"Mathew";}
i:2;
a:1:{s:10:"Adult Name";s:11:"Paul";
i:3;
a:1:{s:10:"Adult Name";s:11:"John";}
}"
我想将名称提取到分隔字段,如:
A B
答案 0 :(得分:0)
你的字符串放在F5中。 手动输入A5并向下拖动。由于最后一个字符中有一个数字,excel会在拖动时自动将数字增加1。
我确定了在每个名称之前开始的重复出现的字符序列,并将其称为开始标记。对于一个出现在名字末尾的角色我做了同样的事情。这些值分别放在C3和D3中。
使用以下公式,我在C3中提供了每个开始标记的字符串中的起始位置:
=SEARCH(C$3,$F$5,C4+1)
C4 + 1告诉find从前一个搜索结果的下一个字符开始。因此,C4需要为空白。
使用以下公式,然后使用D3中的结束标记值找到名称的结尾:
=SEARCH(D$3,$F$5,C5+LEN($C$3))
一旦开始和结束位置已知,使用以下公式从F5中的字符串中提取名称:
=MID($F$5,C5+LEN($C$3),D5-C5-LEN($C$3))
这些公式放在第5行并向下复制以匹配“Adult#”
列表