从复杂文本中提取数据

例题描述和简单分析

Excel文件Book1.xlsx,数据如下所示:


A

1

1、电视机653399*1
2
、双开门冰箱540L2899*1
3
、空调挂机1799*3
4
、空调立式5099*1
5
、吸尘器150AW1299*1

2

1、电视机653399*1
2
、洗衣机10kg3699*1
3
、双开门冰箱540L2899*1
4
、空调挂机1799*3
5
、空调立式5099*1

需要从A列提取数据到B列,结果如下所示:


A

B

1

1、电视机653399*1
2
、双开门冰箱540L2899*1
3
、空调挂机1799*3
4
、空调立式5099*1
5
、吸尘器150AW1299*1

电视机651+双开门冰箱540L1+空调挂机3+空调立式1+吸尘器150AW1

2

1、电视机653399*1
2
、洗衣机10kg3699*1
3
、双开门冰箱540L2899*1
4
、空调挂机1799*3
5
、空调立式5099*1

电视机651+洗衣机10kg1+双开门冰箱540L1+空调挂机3+空调立式1

解法及简要说明

Excel中加载插件ExcelRaq.xll后。

选中B1格,输入公式:=esproc("=?1.split(""\n"").regex(""\\d*(.*\\D)\\d*\\*(\\d)"").(#1/#2/"""").concat(""+"")",A1),后续数据拖拽B1扩展至需要的行即可实现需求。

问答搜集

https://club.excelhome.net/thread-1594984-1-1.html