作者horcetian (提安霍爾斯)
看板Editor
標題[問題] vim編輯器中block mode下的取代功能
時間Fri Mar 18 16:49:04 2011
在vim使用substitute的情況是打入
:40,700s/XXX/YYY/g
取代全部40到700行的XXX為YYY
然而因為之前的觀念錯誤
我以為在block mode下可以進行取代
並且只會取代選取的區塊內的XXX而已
結果還是取代全部的XXX為YYY了
並且在使用多次之後才發現錯誤
想請問一下
vim 可以在block mode下進行專對選取區塊內的取代嗎?
有的話,要如何操作呢?
感謝~~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 120.126.35.240
1F:推 javafang:在選取的模式下,按冒號: 03/20 19:00
2F:→ javafang:會出現:'<,'>並且在後面輸入你要取代的方式 03/20 19:00
3F:→ javafang:例:'<,'>s/yyy/xxx/g 03/20 19:03
4F:推 mjsg:雖然謝謝樓上的說明,不過之前自己也有嘗試過這種方式,但發 03/23 19:21
5F:→ mjsg:現若在按照java大所敘在區塊模式下執行的話,連「是區塊模式 03/23 19:24
6F:→ mjsg:所選取的行,但不在區塊模式選取的範圍中」的符合字串同樣會 03/23 19:24
7F:→ mjsg:被取代掉,不確定是否是原PO想問的,但個人也有興趣了解 03/23 19:26
8F:→ mjsg:舉例: xxx 03/23 19:27
9F:→ mjsg: <用<c-v>選取這部份後> 輸入:s/xx/yy/ 03/23 19:28
10F:→ mjsg:那沒被選取的xx也會被取代掉,版本vim7.2 03/23 19:29
11F:推 martinku:一樓的做法好像同行的都會被換掉 原PO只要塊塊裡的>//< 03/23 23:08
12F:推 Holocaust123::'<,'>s/\%VXXX/YYY/gc 03/24 22:01
13F:推 mjsg:感謝,這是我想問題答案… 03/25 12:44
14F:→ horcetian:對不起,許久才回~~ 我的問題和mjsg大一樣~~ 04/06 22:49