【发布时间】:2014-12-06 12:00:05
【问题描述】:
我有一个巨大的 csv 文件(大约 100GB)。我的问题是我需要用分号(;)替换文件中的逗号(,),除了双反逗号(“”)中的逗号。
我尝试了几种方法,但似乎都没有奏效。此外,此修改需要在 Windows 上进行,因此 sed 和 awk 不可用。
例子:
输入:"A,B,C",D,E,"FG","H,J",K
输出:"A,B,C";D;R;"FG";H,J;K
完成后,我需要删除“。
我可以从文件中删除 ",但分号替换每次都失败。
请让我知道这是否可以通过 Powershell 实现。
【问题讨论】:
-
100 GB csv?我不会相信的
-
您的示例似乎是错误的。请修复它。
-
为什么
sed和awk是不可能的? unxutils.sourceforge.net -
如果sed和awk能用就太好了。但该文件在 Windows 机器中,而不是在 Linux 中。
-
你不应该这样做。使用支持 CSV 文件的编程语言。以逗号分隔的文件形式读入您的文件,然后以不带引号的 ;-分隔文件的形式将其写出(除非不需要保护内容中的分号)。
标签: regex windows powershell csv