从 csv 中删除不需要的逗号

use*_*618 5 csv

例如有“2,881,423”,如何从中删除“,”。我有数百万数据需要完成。是否可以进行批量操作?所以任何工具我都可以用于 PC 或 Mac。

"Position","Value",
"1","1",
"2","1",
"3","1",
"4","2",
"5","2",
Run Code Online (Sandbox Code Playgroud)

...

"2,881,423","19",
"2,881,424","22",
"2,881,425","23",
"2,881,426","23",
"2,881,427","25",
"2,881,428","25",
"2,881,429","25",
Run Code Online (Sandbox Code Playgroud)

...

上面是 csv 中的一些片段。

Pet*_* L. 2

以下代码将完成这项工作 - 它将循环遍历文件夹中具有给定掩码的所有文件:

Sub RemoveCommas()

Dim RegX_Comma As Object
'
Dim FileStream As Object
Dim FileContent As String
Dim SourceFolder As String
Dim FileName As String
'
Set RegX_Comma = CreateObject("VBScript.RegExp")
RegX_Comma.Pattern = "(?<=\d),(?=\d)" 'Comma between any digits
RegX_Comma.IgnoreCase = True
RegX_Comma.Global = True

Set FileStream = CreateObject("ADODB.Stream")
SourceFolder = "D:\DOCUMENTS\" 'Must be specified with trailing "\"

FileName = Dir(InputFolder & "*.txt") 'Specify ANY mask using wildcards, e.g. "*.csv*
Do While FileName <> ""

    FileStream.Open
    FileStream.Charset = "ASCII" 'Change encoding as required
    FileStream.LoadFromFile (SourceFolder & FileName)
    FileContent = RegX_Comma.Replace(FileStream.ReadText, "")
    FileStream.Position = 0
    FileStream.WriteText FileContent
    FileStream.SetEOS
    FileStream.SaveToFile SourceFolder & FileName, 2 'Will overwrite the existing file
    FileStream.Close

FileName = Dir
Loop

End Sub
Run Code Online (Sandbox Code Playgroud)

根据内嵌注释对代码进行必要的修改。

祝你好运!)