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...