如何从string中提取特定的数字

想知道是否有办法从中间文本中提取数字。 例如下面,对于AG5612,有没有办法使用公式提取5612? 我在LEFT,RIGHT和MID上遇到困难,因为中间的文字长短不一。 非常感激。

Column A 948321 AG5612 CA 932 SA15 SA 98223 WS8 FS 

使用这个数组公式:

 =--MID(A1,FIND(" ",A1)+MIN(IFERROR(SEARCH({1,2,3,4,5,6,7,8,9,0},MID(A1,FIND(" ",A1)+1,LEN(A1))),1E+99)),FIND("{{{",SUBSTITUTE(A1," ","{{{",2))-MIN(IFERROR(SEARCH({1,2,3,4,5,6,7,8,9,0},MID(A1,FIND(" ",A1)+1,LEN(A1))),1E+99))-FIND(" ",A1)) 

作为一个数组公式,在退出编辑模式时,需要使用Ctrl-Shift-Enter而不是Enter来确认。 如果正确完成,则Excel将在公式周围放置{}

在这里输入图像说明

这个公式将会find数字开始的位置: =MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"0123456789"))

在列中input并命名标题“ Position 。 然后,在另一列中,使用此公式来提取数字:

=RIGHT(A1,LEN(A1)-position+1)

我知道这已经被回答了,但是这是一个缩短的非数组公式,它将总是得到第一个空格之后的数字(不pipe第一个空格和数字之间有多less空格):

 =LOOKUP(2^999,--MID(A1,MAX(INDEX(IFERROR(FIND({1,2,3,4,5,6,7,8,9,0},MID(A1,FIND(" ",A1),LEN(A1))),0),))+FIND(" ",A1)-ROW($1:$99)+1,ROW($1:$99))) 

在这里输入图像说明