怎么将一段文字替换成另一段?

2012 年 10 月 24 日
 hector
这一段或者另一段很长,或者里面带着个换行符什么的。
4871 次点击
所在节点    Vim
13 条回复
SAGAN
2012 年 10 月 24 日
v模式下分别选中两段文字x和p?
hector
2012 年 10 月 24 日
@SAGAN 问题是要批量替换,比如把第100行到文件尾的所有
aaaaaaaa
bbbbbb
替换成
cccccccccccccc
wolflee
2012 年 10 月 24 日
:100,$s/aaaaaaaa\rbbbbbb/cccccccccccccc/
hector
2012 年 10 月 24 日
@wolflee 还有个很主要的问题,就是文字很长,输入不现实。
后来,利用q:编辑命令,勉强实现。

另块复制
111 aaa
222 bbbbbbbbbbbbbbb
333 cccccc
想把
aaa
bbbbbbbbbbbbbbb
cccccc
复制下来怎么操作?
013231
2012 年 10 月 24 日
@hector CTRL-V進入快模式, 選擇要複製的部分, y.
wolflee
2012 年 10 月 24 日
v选中以后y,命令模式按<C-R>接"复制
gastlygem
2012 年 10 月 24 日
补充 @013231 Windows下可用 Ctrl+Q
cabbala
2012 年 10 月 24 日
sed和awk欢迎你。。
hector
2012 年 10 月 25 日
@013231
@wolflee
@gastlygem
@cabbala
我没描述清楚
因为长度不齐,bbbbbbbbbbbbbbb复制不全,最后没办法把aaa后面补了很多空格
benjiaminlam
2012 年 10 月 25 日
:s
atom
2012 年 10 月 25 日
换个思路。
vim也能以脚本方式调用,把很长的文字放在脚本里,就不用自己输入了。
http://man.chinaunix.net/newsoft/vi/doc/usr_26.html#26.4
013231
2012 年 10 月 25 日
@hector `CTRL-V`, 選擇一列, 然後按`$`就可以選到行尾了, 長度不齊也没关系.
hector
2012 年 10 月 25 日
@013231 感谢,亲测可以,傻瓜在那补空格,汗~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.xtra.eu.org/t/50767

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX