我想在Vim中編寫命令,它可以刪除第三行中的第9和第11個符號。我做了這個3s/.{9,11}//
但它沒有工作。如果您的建議能夠做到這一點,我們將不勝感激。 這裏是一個例子。我有三條線海大海在vim中替換第n個符號的命令
下面
3米以上
3米需要一些幫助,在vim
所以我想刪除第三行第9個象徵符號,在單詞「some」中是「e」字母,在單詞「help」中是第11個字母是字母「h」。
我想在Vim中編寫命令,它可以刪除第三行中的第9和第11個符號。我做了這個3s/.{9,11}//
但它沒有工作。如果您的建議能夠做到這一點,我們將不勝感激。 這裏是一個例子。我有三條線海大海在vim中替換第n個符號的命令
下面
3米以上
3米需要一些幫助,在vim
所以我想刪除第三行第9個象徵符號,在單詞「some」中是「e」字母,在單詞「help」中是第11個字母是字母「h」。
移動的註釋答案
對於Vim的,許多正則表達式特價要求反斜槓。 %c是列匹配操作。因此,
:3s/\%9c.//
將在位置9處的「任何字符」替換爲無。您也可以連接替換,但是每個表達式之間的內容會有所不同。在這種情況下,刪除第9欄後,11(在幫助 'H')實際上是在只對第三線位置10
:3s/\%9c.//|s/\%10c.//
:
:3norm! 9|x10|x
或
:norm! 3G9|x10|x
取適量塗抹於整個緩衝區:
:%norm! 9|x10|x
我得到了答案,但謝謝你,肯特。現在,老了,參考了一個很久以前的電視節目,以及我經常使用的節目。歡呼聲,規範! –
對於VIM,許多正則表達式鄰perators需要反斜槓轉義。而%c是匹配列op。 '3s/\%9c。''將會替換第9列中的任何字符。 –
您也可以連接替換。在這種情況下,位置11會在第一次變化後下降到10,所以':3s/\%9c .// | s/\%10c。'' –
這是一個很酷的解決方案!!我該怎麼做這個命令兩次?我的意思是我想用一個命令替換第9列和第11列的任何字符。 – fuser