从一个文本string中提取数字 – Excel

我试图从excel中的一串文本中拉出一个数字。 string是字母,数字和一些字符的混合。

示例数据string: –

Web Address /products_list.php?retailer=8&cat=43 /products_list.php?retailer=22&cat=43 /products_list.php?retailer=8&cat=1011 /products_list.php?retailer=81&cat=1023 /products_list.php?retailer=147&cat=1224 /products_list.php?retailer=8&cat=1 /products_list.php?retailer=147&cat=4 /products_list.php?retailer=147&cat=401 

我想实现的是

例如excel

我尽可能从文本中提取所有的数字,但是实际上却不知道如何才能得到中间的数字或最后的数字。

我试图解决这个问题的代码是:

 =SUM(MID(0&A3,LARGE(ISNUMBER(--MID(A3,ROW(INDIRECT("1:"&LEN(A3))),1))*ROW(INDIRECT("1:"&LEN(A3))),ROW(INDIRECT("1:"&LEN(A3))))+1,1)*10^ROW(INDIRECT("1:"&LEN(A3)))/10) 

SCE用于数组公式。

如果可能的话,我宁愿一个macros的公式。

哦,以防万一使用Excel 2010的差异。

零售商(B2):

 =LEFT(RIGHT(A2,LEN(A2)-FIND("=",A2)),FIND("&",RIGHT(A2,LEN(A2)-FIND("=",A2)))-1) 

目录号(C2):

 =RIGHT(A2,LEN(A2)-(FIND("cat=",A2)+3)) 

将公式向下拖动

在这里输入图像说明

这看起来真的很丑陋(我不是专家),但它与你提供的列表。

零售商公式:

 =MID(A2,FIND("retailer=",A2)+9,FIND("&",A2)-(FIND("retailer=",A2)+9)) 

猫号的公式:

 =MID(A2,FIND("cat=",A2)+4,100)