URL编码与解码

编码:

在Power Query中,编码可以直接使用Uri.EscapeDataString,比如:

这个很简单,只是函数名有点长,注意单词首字母大写的位置,在其他语言中也有一模一样的函数名。
另外Uri中的第3个字母是i不是l,至于uri和url的区别可以自己百度下。
 

解码:

解码没有直接的函数,但是我们可以借助其他函数来间接实现。
Uri.Parts可以将uri中的query部分解析出来并解码,如下图:

可以看到给一个编码后的字符串,返回的结果直接就是解码后的了。
但是这个函数的参数要求比较苛刻,必须符合uri的结构,所以我们得先构建uri。前面的host就随便填了,就用最简单的a好了。
把这个过程封装为自定义函数,再次需要使用的时候直接调用自定义函数即可。

let
    decode = (x)=>Uri.Parts("a?a="&x)[Query][a],
    解码 = decode("%E7%BC%96%E7%A0%81%E8%A7%A3%E7%A0%81")
in
    解码

2 Replies to “URL编码与解码”

  1. GBK的直接用M解不了,可以借助站长工具http://tool.chinaz.com/tools/urlencode.aspx然后网抓,或者调用JS等其他语言来实现

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注