从包含分隔值的字段的 csv 文件中提取列

Extract columns from a csv file with fields containing delimited values

我正在尝试从 csv 文件中提取某些字段,这些字段具有逗号分隔值。 问题是,某些字段还包含逗号,并且这些字段未包含在引号中。在这种情况下,我该如何提取字段。

另外,只有一个字段在值中包含逗号,我不需要那个。例如:我想从 8 列的数据集中提取前 2 列和后 5 列,其中第三列包含带有逗号

的值

PS: Instead of down voting i would suggest to come ahead and post your brilliant ideas if you have any.

解决方案:

$path = "C:\IE3BW0047A_08112017133859.csv"
Get-Content  $path| Foreach {"$($_.split(',')[0,1,-8,-7,-6,-5,-4,-3,-2,-1] -join '|')"} | set-content C:\IE3BW0047A_08112017133859_filter.csv