Excel:将字符返回到最后(或倒数第二)出现的左侧和右侧?

我有这样一个string:100愚蠢的街道; 政府大楼7号; 芝加哥棕榈,马92111

我想把所有的字符都返回到最后一个分号的左边。

所以,最后一个分号的左边是:100 Stupid Street; 政府大厦7


这是第1步。我还想从string中提取字符:芝加哥棕榈,马92111

我想把所有的字符都返回到第二个到最后一个空格的左边和右边。

所以,在第二个到最后一个空间的右边是:MA 92111

第二个到最后一个空间的左边是:芝加哥棕榈,

如果有办法去掉最后一个公式中的最后一个逗号,那会更好。


这个公式对我有点帮助:= TRIM(RIGHT(SUBSTITUTE(A1,“;”,REPT(“”,LEN(A1))),LEN(A1)))

单元格A1具有原始string。 此公式成功返回最后一个分号右侧的所有内容。

感谢所有来袭的帮助!

如果你正在寻找parsing所有的部分,一些以前的回报可以帮助下一步操作(S),所以公式的部分不必重复。

愚蠢的街道

B1是=LEFT(SUBSTITUTE(A3, ";", "×",LEN(A3)-LEN(SUBSTITUTE(A3,";",""))), FIND("×",SUBSTITUTE(A3&"×", ";", "×",LEN(A3)-LEN(SUBSTITUTE(A3,";",""))))-1)

B2 =TRIM(RIGHT(SUBSTITUTE(A2,";",REPT(" ",99)),99))

B3 =TRIM(RIGHT(SUBSTITUTE(A3,",",REPT(" ",99)),99))

B4 =TRIM(SUBSTITUTE(SUBSTITUTE(A4,B3,""),",",""))

较短的版本:

 B1 =LEFT(A1,(FIND(";",A1,FIND(";",A1)+1))-1) ==> 100 Stupid Street ; Government Tower 7 B2 =TRIM(RIGHT(A1,LEN(A1)-FIND(";",A1,FIND(";",A1)+1))) ==> Chicago Palm, MA 92111 B3 =LEFT(B2,FIND(",",B2)-1) ==> Chicago Palm B4 =TRIM(RIGHT(B2,LEN(B2)-(FIND(",",B2)+1))) ==> MA 92111 

更一般的:

 B1 =LEFT(A1,(FIND("^",SUBSTITUTE(A1,";","^",LEN(A1)-LEN(SUBSTITUTE(A1,";","")))))-1) 

否则,可以实现替代。 家庭作业。