[已解决] pq中提取指定的内容

  [复制链接]
查看140260 | 回复135 | 2020-8-5 08:22:37 | 显示全部楼层 |阅读模式
进取型冰晶白标配冰晶白进取型标配荷叶绿998进取型冰晶白标配冰晶白琥珀金进取型标配琥珀金进取型冰晶白标配冰晶白进取型冰晶白标配冰晶白精英型玛瑙红标配998进取型宝石蓝标配宝石蓝精英型冰晶白标配冰晶白精英型标配墨玉黑墨玉黑如图这样的数据(大量),需要把其中的颜色提取出来,求教如何在powerquery中实现。在Excel中我用IF函数艰难的实现了,总之颜色的数量是已知的,但是位置不一定,颜色的字数也不一样(2-3个字)
嗯,就是这样

9630011511073.rar (12.54 KB, 下载次数: 0)
回复

使用道具 举报

niubala | 2020-8-5 08:27:38 | 显示全部楼层
列一个颜色的list。毕竟颜色种类不多,然后去匹配字符串,
  1. let

  2.   颜色={"冰晶白","琥珀金","琉璃橙","钛晶灰","晶石蓝","红色","宝石蓝","云母红","墨玉黑"},

  3.   源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],

  4.   fx=(x as text)=> try List.Select(颜色, each Text.Contains(x,_)){0} otherwise 998,

  5.   tb=Table.AddColumn(源,"结果",each fx([列1]))

  6. in

  7.   tb
复制代码
可以的。
回复

使用道具 举报

696364 | 2020-8-5 08:36:38 | 显示全部楼层
9630011511071.jpg
回复

使用道具 举报

劲秋 | 2020-8-5 08:37:38 | 显示全部楼层
let
  需提取表 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
  颜色表 = Excel.CurrentWorkbook(){[Name="表3"]}[Content],
  FX=(x as text)=>Table.SelectRows(颜色表, each Text.Contains(x,[颜色])){0}[颜色],
  提取颜色= Table.AddColumn(需提取表,"对应颜色",each try FX([产品]) otherwise "998")
in
  提取颜色

9630011511072.png
回复

使用道具 举报

lwfeng | 2021-7-11 16:25:38 来自手机 | 显示全部楼层
啥玩应呀
回复

使用道具 举报

sd3001 | 2021-7-21 14:33:56 | 显示全部楼层
我是个凑数的。。。
回复

使用道具 举报

小型 | 2021-10-3 07:48:25 来自手机 | 显示全部楼层
我也来顶一下..
回复

使用道具 举报

blackside | 2021-10-17 15:34:48 | 显示全部楼层
鼎力支持!!
回复

使用道具 举报

前徐K神 | 2021-10-20 10:13:53 | 显示全部楼层
老大,这个说的很好,这个真不错!
回复

使用道具 举报

17cm | 2021-10-21 06:39:42 | 显示全部楼层
太棒了,感谢唐楼主精彩的分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则