data-index在react里怎样表达_Excel Power Query 调用javascript使用正则表达式

44f3e2b369272dcc2e7e4766fede9277.png

使用正则表达式,本身power query里是没有正则的,但借助一些方法,可以实现。
今天利用个简单的数据清洗案例分享下power query里怎样调用javascript语言使用正则表达式,

0ef5b95c931a050db277de092aeb3454.png

直接用M写也可以,但这里用正则比较简单一点,先看看纯M的套路

50d34ac58f926ad24686994149d057f9.png

下面是使用正则的套套路

e62277440be1c34bcb1b50e27998c5fe.png

接下来分享下,怎样通过调用javascript来使用正则,M里有一个函数Web.Page,专门用于解析网址的,可以利用他解析js里的内容,如下

1de7499422a8be0086298839943ae6d2.png

Data里有一个Table,深化一下,发现还有Table一直深化

fb1673a1abf51a6d8bd13249da525003.png

然后我们发现这步深化是个固定模式 [Data]{0}[Children]{0}[Children]{1}[Text]{0}

3b5d978a48216c250a1a56a7101b8ce7.png

接着就可以测试下写正则了

6ade4a24025dff0658ebc9c7d74afb54.png

以上了解后就可以正式开始今天的练习,为了方便使用一般情况下大叔会把这部分定义成一个自定义的函数

fx = (s,r)=>Web.Page("<script>document.write( '"&s&"'.match(/"&r&"/gi) )</script>")[Data]{0}[Children]{0}[Children]{1}[Text]{0}

首先把所有数据合并为一条文本

45da9d589d40632822f213f6a745c52a.png

接着观察,我们发现要提取的内容就是对应项目后面的数字

10d457554434c4af1c92dd50a9c5bec9.png

很可惜的是pq里的正则不支持正向的零宽的,所以想一步到位全部提取数字还是有点麻烦,不过没关系,只要对应的字符串提取到,后面处理也很方便的。

8d23831dad9b7bead0784da422e70dec.png

接着把项目,替换成+号,当然可以再用正则replace一次,这里大叔就直接用没pq里的方法操作

a231a25d58f74f5084f718928a0cc1f7.png

最后套上eva

4d80e62046120b61ddf111bc603810ad.png

分享结束,感谢观看,Thanks!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值