这是来自一位星友的提问:数字汉字混合的情况,只要拆分一次,怎么办?
这个问题在很多提取问卷题目、答案,或者财务报表的项目序号等有一定的借鉴意义。
我们知道,在Power Query里,有一项拆分列的选项是“按照从数字到非数字的转换”进行拆分,通过这个选项,可以很轻松地将数字和非数字间隔出现的情况拆开:
拆分后,所有内容会被一次性拆解完毕,步骤公式和输出内容如下:
到了这里,可能有的朋友会说,这个问题不是好简单吗?再将第2项及后面的内容合并不就好了吗?
但是,这是不可取的——为什么?自己可以先想一下。
显然,拆分后的结果被分成了很多列,并通过公式中最后一个列表参数进行控制,所以,我们这里可以修改其中的输出内容,只取所需要的列(1列,并且可以直接修改输出的列明),如“首段数字”:
得到了首段数字之后,我们就可以通过剔除首段内容的方式,得到剩下的全部内容,这里提供两种方法:
这个方法很简单,因为我们已经得到了前面的数字内容,所以,很容易通过Text.Length函数计算出首段内容的长度,然后,通过Text.ReplaceRange函数把原内容中的前面几个字符替换为空白即可。
这个方法本身也很简单,即用Text.TrimStart这个函数直接对内容进行“掐头”。
但是,可能很多朋友对Text.TrimStart这个函数不是很熟悉。也借这个机会跟大家讲一下。
注意,这里不会删除中间存在的列表中的字符,大家可以自己体会一下。
再回到前面的问题,为什么不直接通过再合并的方式,把除第一项以外的内容直接做合并?这是因为,从数字到非数字的转换拆分出来的列是按现有内容进行固定拆分的,比如目前的内容拆出来只有5项,那如果后面新增的内容有6项甚至更多,我们再用这个拆分合并的过程,就会丢失那些多出的内容。
总的来说,这个问题不难,方法也很多,核心的思路是,当我们不能一下子得到最终全部结果时,我们可以先得到部分结果,然后再构造出剩下的结果——步步为营,是我们拆解问题、解决问题的常用思想,不仅仅是Power Query或Power BI。
本文分享自 Excel到PowerBI 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有