我遇到了这个问题:我有一个包含以下格式的数据的CSV文件:
100,30,1.704,,7
101,,suka,,5
我应该在mysql表中导入这个CSV
如您所见,此csv具有空字段,用双逗号','表示。我想使用sed和正则表达式,定义模式 ,, ,如果匹配,则将其替换为我的csv文件中的数字 58 。 任何人都可以帮助我,我不会很好地使用正则表达式。
答案 0 :(得分:3)
这可能对您有用:
sed ':a;s/,,/,58,/g;ta' file
答案 1 :(得分:1)
这样的事情应该可以解决问题:
sed -e 's/,,/,58,/g'
将搜索('s')或',,'并将其替换为',58',用于所有出现('g';而不是仅出现第一次出现)
答案 2 :(得分:0)
在Vi编辑器中,转到命令模式并键入以下内容:
:%s/,,/,58,/g
答案 3 :(得分:-1)
如果您需要正则表达式选项,可以尝试使用notepad ++。打开搜索和替换将搜索模式设置为“正则表达式”,将,,
替换为,58
。我刚刚尝试了它,它可以... ,,,,,,,,
到,58,58,58,58