我正在尝试匹配并删除引号之间的多个换行符以清理CSV文件。SED是我最熟悉的,但我很高兴使用任何假设我可以访问它。
例子"ABC","This is
a
test
","1","2","This
is
another
test"
预期最终结果
"ABC","This is a test","1","2","This is another test"
我在regex101.com
上尝试了多种模式,并环顾了"类似的问题",但似乎找不到任何能工作的东西。如有任何帮助,不胜感激。
您可以试试这个gnu awk
:
awk -v RS='"[^"]+"' 'RT {gsub(/"n+|n+"/, """, RT); gsub(/n+/, " ", RT)} {ORS=RT} 1' file.csv
"ABC","This is a test","1","2","This is another test"