首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

更多Text类函数学习及其实战用法

翩若惊鸿,婉若游龙

之前的文章中已经介绍过TextRemove和Text.Select两个非常实用的M函数

M函数中还有一系列的文本处理函数,掌握了以上两个函数的用法,其他文本类函数就都能快速上手了。

大部分文本处理函数都有对应的Excel函数,所以掌握这些函数并不是什么难事。

常用的Text类函数及其用法解释

上面的函数看看用途说明,对比一下Excel函数,再套一个文本列,测试一下函数参数基本都就能能快速掌握。我们再通过两个实战案例讲解更多文本类函数的用法。

一、统计字符串出现次数

延用之前的产品名称列。假设我们这次的需求是统计产品名称中某个字符出现的次数,比如,字母"i"在每一行中出现了多少次?

我们的解题思路是:先从文本中把字母"i"选出来 —Text.Select,然后计算字符数(字符长度)就可以了 — Text.Length

在PowerQuery编辑器中添加自定义列:

如果害怕计算结果被大小写影响的话,可以在自定义列中加上大写的"I"。

反过来也可以在取出英文字母后,使用 Text.Lower 或者Text.Upper 统一大小写,减少干扰。

二、按指定位数补齐零

有时我们需要将列中的数据补齐到指定位数。比如,将下列数据调整为6位数代码,不足6位数的,需要在前面用0补齐。

你可能会想到功能区中的格式里有个添加前缀功能,但是这个功能只能添加固定的文本,无法满足以上需求。

其实PowerQuery中有专门用来完成此类计算的函数 Text.PadStart,用它可以实现在字符串前补齐位数。

添加自定义列:Text.PadStart( Text.From([编码]),6,"0")

我们也可以组合其他文本类函数实现同样的效果。

解题思路是:直接在数字列左边增加6个"0"—Text.Combine,然后从右边开始取6位字符 —Text.End

添加自定义列:

后面这个解法只是出于教学目的,让大家掌握更多的M函数,实际工作中使用第一个解法即可。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230420A01L6L00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券