Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在power query中加载CSV时如何处理多个引号?_Csv_Powerbi_Powerquery_M - Fatal编程技术网

在power query中加载CSV时如何处理多个引号?

在power query中加载CSV时如何处理多个引号?,csv,powerbi,powerquery,m,Csv,Powerbi,Powerquery,M,我有几个CSV文件要合并到一个表中(文件具有相同的结构),但文件结构不够复杂,可能会出现问题 第一行是普通的,只是用逗号分隔的标题: 账户、说明、实体、风险等 但是,包含实际数据的行以双引号开始和结束,列之间用逗号分隔,但是people(全名)在开始和结束处有两个双引号。我知道将名称保留在一列中是一个转义字符,但一个就足够了 “1625110,待开票,587,普通”“Doe,John”“…” 因此,我需要做但不知道如何将“从每行的开头和结尾删除数据,并将每行中的数据替换为”“” 我需要在Powe

我有几个CSV文件要合并到一个表中(文件具有相同的结构),但文件结构不够复杂,可能会出现问题

第一行是普通的,只是用逗号分隔的标题:

账户、说明、实体、风险等

但是,包含实际数据的行以双引号开始和结束,列之间用逗号分隔,但是people(全名)在开始和结束处有两个双引号。我知道将名称保留在一列中是一个转义字符,但一个就足够了

“1625110,待开票,587,普通”“Doe,John”“…”

因此,我需要做但不知道如何将“从每行的开头和结尾删除数据,并将每行中的数据替换为
“”

我需要在Power Query中这样做,因为随着时间的推移,类似的CSV文件会越来越多,我不想手动清理它们

有什么想法吗

我试着用简单的:

= Table.AddColumn(#"Removed Other Columns", "Custom", each Csv.Document(
    [Content],
    [
        Delimiter = ",",
        QuoteStyle = QuoteStyle.Csv
    ]
))

首先尝试加载到单个列,替换值以删除额外的引号,然后按“
”,“
拆分

下面是加载单个文件时的情况:

let
    Source = Csv.Document(File.Contents("filepath\file.csv"),[Delimiter="#(tab)"]),
    ReplaceQuotes = Table.ReplaceValue(Source,"""""","""",Replacer.ReplaceText,{"Column1"}),
    SplitIntoColumns = Table.SplitColumn(ReplaceQuotes, "Column1", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv)),
    #"Promoted Headers" = Table.PromoteHeaders(SplitIntoColumns, [PromoteAllScalars=true])
in
    #"Promoted Headers"
我在第一步中使用了制表符分隔符来防止它分裂