如何理解Power Query中的“#”转义字符?

2020-03-23 16:31:59 浏览数 (1)

我们在Power Query中有时候也会看到在公式中会有"#"字符存在,这个#字是什么意思呢?

我们今天来初步了解下这个#的功能。

在说这个之前,我们先来了解下什么是Unicode字符。Unicode字符是计算机科学领域里的一项业界标准,包括字符集、编码方案等。我们平时所听说的ASCII就是其中的一部分,只是前128个字符,包括英文字符,数字及一些常用符号(不包括汉字)。

字符区间

16进制编码区间

0..9

0031-0039

A..Z

0041-005A

a..z

0061-007A

一..龥

4E00-9FA5

在Power Query中,使用List生成列表,必须是升序的(是根据Unicode编码进行的升序)

另外其中主要的3个符号类的,有自己的简称,我们记住简称即可。

回车符简写:cr 编码号:000D

换行符简写:lf 编码号:000A

制表符简写:tab 编码号:0009

此外,如果我们需要一些特殊字符,也可以根据Unicode编码分类进行查找。

具体分类大家可以去搜索引擎查找。例如我们需要日语的片假名,韩语字符,特殊的符号等都可以进行查找,查找到后就可以把对应的16位进制的编号记下,以后就可以方便转义了。

了解了Unicode编码,那我们看下,在Power Query中如何使用转义字符"#"进行转换。

例1:通过"#"直接进行16进制Unicode编码转义。 ="abc#(lf)abc",其结果就是把lf转义成了换行。在进行Unicode编码转义时,必须用""在最外面,转义的编码在()内即可。当然如果直接转义就不需要了。

="123#(0061)bc"

例2:通过#转义含有特殊字符的字段名。

=[#"a b"=1]

= [#"a&b"=1]

例3:通过转义符直接转义日期格式并进行计算。 = #date(2018,11,11) #duration(1,0,0,0)

例4:此外还可以用于一些特殊转义。 =#shared (获得所有函数详细说明)

=#table({},{{}}) (构建一个表格)

此外需要注意的是,跟在转义字符#后面的都是小写单词。

0 人点赞