vim替換功能

2021-07-10 22:33:43 字數 1231 閱讀 3050

vim中可以在底行模式(命令列模式)使用s命令替換字串。

語法為 :[addr]s/源字串/目的字串/[option]

全域性替換命令為::%s/源字串/目的字串/g

[addr]:表示檢索範圍,省略時表示當前行。

addr

搜尋範圍

「m,n」

表示從第m行到n行,例如 :1,20s/old/new/g 從第一行到第20行替換每一行所有的old為new字串

「%」表示整個檔案,同「1,$」,例如 :%s/old/new/ 整個檔案替換每一行中第乙個old為new字串

「. ,$」

從當前行到檔案尾 ,例如 : . ,$/old/new/g 從當前行到檔案為替換每一行所有的old為new字串

[option] :表示操作型別

option含義n

表示替換第n個匹配字串

g表示全域性替換

c表示進行確認

p表示替代結果逐行顯示(ctrl + l恢復螢幕)

省略option

僅對當前行匹配串進行替換

// 注:如果在源字串和目的字串中出現特殊字元,需要用」\」轉義

:s/\/\///g // 替換當前行

// 下面的命令都在底行模式下輸入

// 替換當前行第乙個為old為new

:s/old/new/

// 替換當前行所有的old為new

:s/old/new/g

// 替換當前行第3個old為new

:s/old/new/

3// 替換第n行開始到最後一行中每一行的第乙個old為new

:n,$s/old/new/

:n,$s/old/new/1

// 替換第n行開始到最後一行中每一行所有的old為new

:n,$s/old/new/g

// 替換整個檔案的每一行中old為new

:%s/old/new/g

//或:1,$s/old/new/g

// 替換當前行到檔案末尾每一行中第乙個old為new

:.,$s/old/new

// 統計key在文字中的個數

:1,$s/key/key/g

vi/vim查詢替換使用方法

vim全域性替換命令

vim替換功能

range s pattern string c,e,g,i 5.1 range指的是範圍,1,7 指從第一行至第七行,1,指從第一行至最後一行,也就是整篇文章,也可以 代表。還記得嗎?是目前編輯的文章,是前一次編輯的文章。pattern就是要被替換掉的字串,可以用 regexp 來表示。strin...

VIM替換功能

1 替換 substitute range s pattern string c,e,g,i 5.1 range 指的是範圍,1,7 指從第一行至第七行,1,指從第一行至最後一行,也就是整篇文章,也可以 代表。還記得嗎?是目前編輯的文章,是前一次編輯的文章。pattern 就是要被替換掉的字串,可以...

vim 替換詳解

range s pattern string c,e,g,i 5 1 range指的是範圍,1,7 指從第一行至第七行,1,指從第一行至最後一行,也就是整篇文章,也可以 代表。還記得嗎?是目前編輯的文章,是前一次編輯的文章。pattern就是要被替換掉的字串,可以用 regexp 來表示。strin...