Delete matching search pattern in VIM
我想在Vim中寻找一个短语。找到后,我想删除这个短语。最简单的方法是循环到所有实例(
注意:我知道我可以删除一定数量的字符或单词,但我想特别删除搜索的"匹配"。这有可能吗?
http:/ / / / vim.wikia.com _ _维基搜索和替换
试试这个:搜索和替换
:%s /食品/酒吧/ GC
改变每个"foo""酒吧",但第一个确认买卖。
出版社Y/N来改变或保持您的文本。
有3种:我能想到的
这是最简单的方式来解释。
1 | :%s/phrase to delete//gc |
但你也可以(我用这一个个人(二)do a正则搜索短语to delete for the
1 | /phrase to delete |
Vim会带你开始下一个阶段发生。
进入插入模式(HIT)使用删除和清除的关键短语。
当你击中Escape消去所有的短语。
现在你必须做这一次,你可以去下一个热门的短语的第一点/周期,然后点击"删除"。关键的是,你只是执行动作
继续,直到你击中点N和做的。
你可以做一个搜索lastly短语to delete(样的在第二的方法),但这一时间,而不是要你插入模式
计数的数目,你想删除人物
型数(与数个键)
点击关键人物应该得到消去x
继续通过与N型和第二点的方法。
PS如果你不知道你可以做一个资本n移动向后通过搜索匹配。
a简单的解决方案是使用一个
1 | :%s///gc |
本命令取代occurrences负荷模式的搜索(这是用if这是一个空字符串omitted)模式。
此外,一个可以定义映射的文本对象的选择操作最后,通过对匹配的搜索模式下的光标。酒店通过使用映射的双CAN在Visual模式或运算符的待定。选择文本开始从以前的搜索匹配负载模式对ITS的结局。
1 2 3 4 5 6 7 8 9 10 | vnoremap <silent> i/ :<c-u>call SelectMatch()<cr> onoremap <silent> i/ :call SelectMatch()<cr> function! SelectMatch() if search(@/, 'bcW') norm! v call search(@/, 'ceW') else norm! gv endif endfunction |
本文利用CAN删除映射在一个
最好的方法是使用:
1 | :%s/phrase//gc |
所以,你可以使用