Powerbi 如何转换此'\x5b\x5b\x5b';对此';[';
在JavaScript中很容易,但是如何在PQ中转换呢? 有简单的方法吗Powerbi 如何转换此'\x5b\x5b\x5b';对此';[';,powerbi,powerquery,Powerbi,Powerquery,在JavaScript中很容易,但是如何在PQ中转换呢? 有简单的方法吗 这似乎有效,具体到您的\x5b\x5b\x5b部分 如果从名为Table1的表开始作为Power Query查询的源,文本在第1列中: 然后使用以下设置转换->替换值: …要得到这个: 然后,您可以使用以下命令添加列->自定义列: …要得到这个: 然后可以提取新自定义列中的值: …要得到这个: 实际上,在JavaScript源代码中,'\x5b\x5b\x220BwP4bPODhDZVZzVcXdmZlVnen
这似乎有效,具体到您的\x5b\x5b\x5b部分 如果从名为Table1的表开始作为Power Query查询的源,文本在第1列中: 然后使用以下设置转换->替换值: …要得到这个: 然后,您可以使用以下命令添加列->自定义列: …要得到这个: 然后可以提取新自定义列中的值: …要得到这个:
实际上,在JavaScript源代码中,
'\x5b\x5b\x220BwP4bPODhDZVZzVcXdmZlVnenc\x22'
编译为与'[[[“0BwP4bPODhDZVZzVcXdmZlVnenc”
相同的值,因此没有转换
JavaScript字符串是UTF-16代码单元的计数序列。UTF-16是Unicode字符集的编码。JavaScript文本字符串允许几种类型的转义序列。一种是\xHH,其中HH是十六进制数(0到255)对于ISO 8859-1代码单元。ISO 8859-1是Unicode的子集,具有与前256个Unicode代码点相同的代码点。UTF-16将这些代码点编码为相同的值
Power Query字符串也是UTF-16代码单元的计数序列(Java、C#、VB4/5/6、VBA、VBScript、VB、F#、…,等等中的字符串也是如此。)因此,除了转义之外,您的字符串几乎就在那里了。我们可以通过几个步骤将JavaScript文本字符串转换为Power Query文本值
JavaScript还有\uhhh转义符,其中HHHH是UTF-16代码单元的十六进制数。由于Unicode和ISO 8859-1之间的相似性,xHH实际上是\u00HH的简写
JSON简化了JavaScript文本字符串,允许\uhhh转义,但不允许\xHH。Power Query具有JSON的数据转换功能。因此,我们需要将JavaScript转换为JSON,然后进行转换
在空白查询中,打开高级编辑器并粘贴:
let
JavaScriptLiteral = "\x5b\x5b\x5b\x220BwP4bPODhDZVZzVcXdmZlVnenc\x22",
JsonLiteral = """" & Text.Replace(JavaScriptLiteral, "\x","\u00") & """",
Value = Json.Document(JsonLiteral)
in
Value
(如果给定的源带有其他转义符,如“\\x”
或双引号,则此选项将中断。)
当然,如果需要将其应用于多个字符串,您可以将其转换为Power Query函数,或者您可以将其转换为一个表,或者……也许您应该解释一下我们在看什么?我一点也不知道……我确实发现了一些关于x5b猎鹿的信息,但我认为这与此上下文无关。更多上下文是绝对必需的。这是在哪里发生的?这与电源查询或电源BI有何关系?