vim/vi——\n只能被替换或删除 \r只能用来插入或替换
%s/$/\r/g
%s/\n//g
在Linux 中,"\n"代表换行符,"\r"代表回车符
%s .... /g 这样的搜索替换格式只能保证你在一行中被多次替换,但是一旦你插入了一个行结束符(\n),这个行会中止,当前行不再继续进行替换,因此你显然不能替换为 \n 这样的字符,这样会造成当前行不继续产生后续替换。
至于你能够把 \n 作为搜索 pattern 这显然是允许的。
在模式中使用的是“\n”,而被替换的内容中却不能
使用“\n”,而只能使用“\r”。原因是历史造成的,详情如果有兴趣的话可以查看“:help NL-used-for-Nul”。
%s .... /g 这样的搜索替换格式只能保证你在一行中被多次替换,但是一旦你插入了一个行结束符(\n),这个行会中止,当前行不再继续进行替换,因此你显然不能替换为 \n 这样的字符,这样会造成当前行不继续产生后续替换。
至于你能够把 \n 作为搜索 pattern 这显然是允许的。
在模式中使用的是“\n”,而被替换的内容中却不能
使用“\n”,而只能使用“\r”。原因是历史造成的,详情如果有兴趣的话可以查看“:help NL-used-for-Nul”。