我有这个问题:我有一个 CSV 文件,其中包含一些这种格式的数据:
100,30,1.704,,7
101,,suka,,5
我应该在 mysql 表中导入这个 CSV
如您所见,此 csv 有空字段,用双逗号 ',,' 表示。我想使用 sed 和正则表达式,定义模式,如果匹配,用我的 csv 文件中的数字58替换它。任何人都可以帮助我,我不太了解正则表达式。
这可能对您有用:
sed ':a;s/,,/,58,/g;ta' file
像这样的东西应该可以解决问题:
sed -e 's/,,/,58,/g'
它将搜索 ('s') 或 ',,' 并将其替换为 ',58,' 以查找所有出现 ('g'; 而不是仅第一次出现))
在 Vi 编辑器中,进入命令模式并输入以下内容:
:%s/,,/,58,/g
如果您需要正则表达式选项,您可以尝试使用 notepad++。打开搜索和替换将搜索模式设置为“正则表达式”替换,,
为,58
。,,,,,,,,
我刚刚尝试过,它的工作原理......,58,58,58,58