从官网的文档中我们可以看到N+1的表达式概述及功能 ,但是平时我们开发过程中,可能用到的只是其中的一小部分,所以今天给大家分享一些在power query里面常用的一些M表达式。
我先把官网的文档链接贴出来,需要看详细的小伙伴可以去看详解 .(PS:官网文档可以下载成PDF哦)
https://docs.microsoft.com/zh-cn/powerquery-m/power-query-m-function-reference
这里我给大家普及一下所有microsoft官网的文档都分为:英、中。小伙伴可以直接指定网页显示的语言,注意看我下方链接标粗的地方,例: https://docs.microsoft.com/en-us/powerquery-m/power-query-m-function-reference
今天主要是分享一些平时开发中所用到的M表达式
以下数据都为测试数据
1.截取
例:取name列前四位值
截取=Text.Middle([NAME],0,4)
注意:M函数所以取字符串下标位置都是从0......N。
结果如下:
官方解释:https://docs.microsoft.com/zh-cn/powerquery-m/text-middle
2.替换
例:将MARK字段特殊字符去掉并且去掉空格
这里一共用了两个函数:空格:Text.Trim替换:Text.Replace
替换=Text.Replace(Text.Replace(Text.Replace(Text.Trim([MARK]),"&",""),"%","")," ","")
结果如下:
官网解释:https://docs.microsoft.com/zh-cn/powerquery-m/text-trim / https://docs.microsoft.com/zh-cn/powerquery-m/text-replace
3.合并
例:NAME列与替换列合并
合并有很多种方法,这边也是仅两种简单的: " & " ,"Text.Combine”
方法一:
合并一 = [NAME] & [替换]
结果如下 :
方法二:
合并二=Text.Combine({[NAME],[替换]})
结果如下:
官方解释:https://docs.microsoft.com/zh-cn/powerquery-m/text-combine
4.判断字符长度
例:判断ID列位数是否满足5位
判断长度=Text.Length([ID])
判断长度不足补0=Text.PadStart([ID],5,"0")
结果如下:
官网解释:https://docs.microsoft.com/zh-cn/powerquery-m/text-padstart
这里先简短的写一些比较简单常用的,Power Query M函数会持续更新中。。。。。