小勤:大海,想这种品名规格怎么统一啊?
大海:这个还是比较简单的,你前面不是学过Text.Remove吗?说说你的思路?
小勤:嗯,是不是可以先通过Text.Remove分拆中文、数字和英文单位,然后将单位统一转换为小写,最后在合并在一起?
大海:完全正确,有了思路,你就可以动手了。
小勤:嗯,我试试。
Step-01:添加自定义列,删除数字和字母,保留中文名称
Step-02:添加自定义列,删除中文名称,保留数字和字母(规格和单位)
Step-03:转换规格列为小写
也可以直接通过一个简单的函数来实现:
Step-04:合并名称及规格列
小勤:嗯。搞定了,原来这么简单。
大海:嗯,有了思路就大胆地试,另外,现在像这种问题你可以尝试直接写完整的公式来实现了。
小勤:啊,在PQ里一个函数都感觉挺长的,要多个嵌套的话会不会很难啊?先教我这个试试呗?
大海:嵌套多少其实不是问题,关键是思路,一般来说,多层嵌套的函数思路可以按照实现的方式倒着写。比如这个问题一般实现思路是先把名称和规格取出来并小写,然后将名称和小写规格合并,所以写公式的时候可以先写最外层的合并函数,然后写取名称的函数和去规格并小写的函数(为了使结构清晰,一定要分层次写),公式编写过程可考虑下面动画:
具体公式参考案例数据文件。
小勤:嗯。这种写法思路挺清晰的,虽然比较长,但可以一层层写,先写好函数名,然后留空参数,逐层补全参数,层层往里写,把参数都补完就全部写完了。
大海:对的。这个过程还有一点很重要的就是换行和适当的留空格形成良好的层次感,这样的话哪个括号对哪个,哪个参数属于哪个函数也很清晰。
小勤:的确是。实在不行还可以通过分拆不同的步骤一步步来。呵呵。
大海:嗯。看实际需要,一般日常工作其实通过多步操作就够用了,但如果想继续深入学习,解决工作中的更加复杂的问题,那就多练一下M语言及函数。
小勤:好的。