【发布时间】:2021-08-08 02:57:11
【问题描述】:
我在 macOS 上有一个由 Windows 创建的 CSV 文件,如下所示:
"C00115940","","","","","O","","","f","","b",NULL,"92583","","123-456-7890","","","","","","M","W","","","","jc@abc.def","","","","C","5","","S",NULL,"92583","","951","","","m@s.gov","","","","","","","","","",NULL,NULL,"",NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,"",NULL,NULL,"",NULL,NULL,"",NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,"",NULL,NULL,"",""," ","1","",NULL,"","","","","",NULL,"","75350","","","",NULL,"","","","","","","","","","",""¬
"C00102747","","","","","R","","","3","","A",NULL,"12207","","5","","","","","","S","D","","","","t@abc.def","","","","R","35 Any St¬
3rd Fl","","A",NULL,"12207","","5","","","S@r.org","","","","","","","","","",NULL,NULL,"",NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,"",NULL,NULL,"",NULL,NULL,"",NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,"",NULL,NULL,"",""," T","1","",NULL,"","","","","",NULL,"","75350","","","",NULL,"","","","","","","","","","",""¬
在 vim 中,我启用了 :set list,因此您可以看到 ¬ 换行符所在的位置。
在第二行中,我需要删除的一个字段中间有一个换行符。每行应始终以双引号结尾。如果我执行/[^"]$,例如,我可以在第二行看到t¬,其中换行符位于地址字段内("35 Any St¬ 3rd Fl")
我已经尝试过:%s/\([^"]\)$/\1/g,但没有任何作用。
我可以运行更好的替换命令来删除这些错误的换行符,但不会删除其他任何换行符吗?
【问题讨论】:
标签: vim