(sed) 删除双引号内任意两个数字之间的逗号(但保留数字)
(sed) Remove comma between any two numbers inside double quote (but keep the number)
我需要清理列出一些数字的 CSV。对于 4 位或更多位数字,它用带逗号的双引号给出数字。我需要删除这种类型的逗号。
到目前为止我得到了这个:
sed 's/"[0-9]*\,[0-9]*"/"idk"/g'
成功识别出我要查找的逗号与其他逗号不同。
example,134,"idk",0.91%,8.0
example,96,"idk",2.62%,6.9
example,89,367,3.68%,5.8
如何告诉 sed 我只需要从匹配查询中删除逗号?
编辑:抱歉,预期输出只是删除逗号。
在:example,89,"1,456",3.68%,5.8
输出:example,89,"1456",3.68%,5.8
您告诉 sed “记住”其他部分并在替换字符串中使用它们。 IE。使用反向引用。
sed 's/\("[0-9]*\),\([0-9]*"\)//g'
我需要清理列出一些数字的 CSV。对于 4 位或更多位数字,它用带逗号的双引号给出数字。我需要删除这种类型的逗号。
到目前为止我得到了这个:
sed 's/"[0-9]*\,[0-9]*"/"idk"/g'
成功识别出我要查找的逗号与其他逗号不同。
example,134,"idk",0.91%,8.0
example,96,"idk",2.62%,6.9
example,89,367,3.68%,5.8
如何告诉 sed 我只需要从匹配查询中删除逗号?
编辑:抱歉,预期输出只是删除逗号。
在:example,89,"1,456",3.68%,5.8
输出:example,89,"1456",3.68%,5.8
您告诉 sed “记住”其他部分并在替换字符串中使用它们。 IE。使用反向引用。
sed 's/\("[0-9]*\),\([0-9]*"\)//g'