我试图用经典vi中的单词替换换行符(在arch linux中)。 substitute命令如下所示:
:%S / \ N /字/克
在vim中有效。我正在处理的文件是来自Calc的复制/粘贴的结果(来自数据仓库程序的csv)。
VIM输出是线被替换(导致非常低的线,这是我必须输入到另一个程序的命令)。 我在VIM上的Windows和Linux中对此进行了测试。
同一文件的Vi输出为:“替换模式匹配失败”
我使用的vi版本是Arch中的默认版本:版本4.0(gritter)12/25/06
哪个是经典的vi。
我不能在VIM中做到这一点,但为什么这不适用于vi?有没有办法让这项工作?我试图找一个解决方案,但没有遇到任何有用的东西。
答案 0 :(得分:1)
vi
使用ex
regular-expressions,其中大多数是POSIX Basic Regular Expressions,并且不需要C风格的转义序列。可以使用join
commend from ex
代替!
以防止修改(通常会调整空格)。
:%j!
替代命令可用于模拟替换换行符。
:2,$s/^/start
:1,$-s/$/end
:%j!