Excel 如何提取某一字符前面的内容?如下例子, x x x x x x for x x x x x x x x x x x for x x x

如何取for前面三个x的内容?x代表的内容字符长度不一样,x内部之间没有空格,但x与x之间有一个空格键。求大神。
最新回答
视水若沙

2024-07-04 02:36:10

"for"与"x"之间应该也有一个空格对吧

假和枣设数据写在A列,从A1单元格开始的数据陆棚历,则
B1单元格写入公式
=MID(A1,FIND("●",SUBSTITUTE(A1," ","●"早搜,LEN(SUBSTITUTE(LEFT(A1,FIND("for",A1)-1)," ",))-3))+1,FIND("for",A1)-1-FIND("●",SUBSTITUTE(A1," ","●",LEN(SUBSTITUTE(LEFT(A1,FIND("for",A1)-1)," ",))-3)))
下拉填充公式

如果A列单元格内容中含有字符"●",则公式中的"●"改成其他A列中没有的字符如,"★"再或"⊕"等等
追问

追答
为什么不去试一下能不能用再来追问

● 只是做为一个记号在公式中进行使用,用来定位取值的位置
追问

结果是这样的。这个句子“x x x x x x for x x”是距离。

实际要解决的是追问里面的句子。

追答
改了一下公式,你再试一下

=IF(LEN(LEFT(A1,FIND("for",A1)-1))-LEN(SUBSTITUTE(LEFT(A1,FIND("for",A1)-1)," ",))>3,MID(A1,FIND("●",SUBSTITUTE(A1," ","●",LEN(LEFT(A1,FIND("for",A1)-1))-LEN(SUBSTITUTE(LEFT(A1,FIND("for",A1)-1)," ",))-3))+1,FIND("for",A1)-1-FIND("●",SUBSTITUTE(A1," ","●",LEN(LEFT(A1,FIND("for",A1)-1))-LEN(SUBSTITUTE(LEFT(A1,FIND("for",A1)-1)," ",))-3))),LEFT(A1,FIND("for",A1)-1))