vim中的替换
Vim可以在尾行模式下使用:substitute命令將指定的字符串替換成其他目標(biāo)字符串。
通常我們可以使用該命令的縮寫格式:s進行來進行vim字符串替換操作
一、Vim替換字符串命令的語法
Vim替換字符串命令的基本語法是 :[range]s/目標(biāo)字符串/替換字符串/[option],其中range和option字段都可以缺省不填。
下面介紹VIM替換字符串各個變量的含義:
- range:表示搜索范圍,默認(rèn)表示當(dāng)前行;
- range字段值1,10表示從第1到第10行;
- %表示整個文件(相當(dāng)于1,$);
- 而.,$代表從當(dāng)前行到本文件的末尾
- s:substitute的簡寫,表示執(zhí)行替換字符串操作;
- option:表示操作類型,默認(rèn)只對第一個匹配的字符進行替換;
- option字段值g(global)表示全局替換;
- c(comfirm)表示操作時需要確認(rèn);
- i(ignorecase)表示不區(qū)分大小寫;
vim替換字符串的這些選項可以組合使用
二、Vim替換命令舉例
vim全局替換命令并要求對替換字符串命令進行確認(rèn)操作
1、將所有的Vim字符串替換為vim字符串
:1,$s/Vim/vim/gc 會出現(xiàn)提示”replace with foo(y/n/a/q/l/^E/^Y)?”,詢問是否確認(rèn)執(zhí)行 或者 :%s/Vim/vim/gc 會出現(xiàn)提示”replace with foo(y/n/a/q/l/^E/^Y)?”,詢問是否確認(rèn)執(zhí)行待選擇操作的含義包括:
y:確認(rèn)執(zhí)行這個替換將將所有Vim替換成vim;
n:取消這個本交Vim替換命令的操作;
a:執(zhí)行本次所有替換字符串操作且不再詢問;
q:退出當(dāng)前vim字符串替換操作而不做任何改動;
l:替換完當(dāng)前匹配點后退出(last)
Ctrl + E:向上翻滾一行
Ctrl + Y:向下翻滾一行
2、 將光標(biāo)所在行出現(xiàn)的所有包含line的字符串中l(wèi)ine替換為lines
:s/line/lines/g表示將光標(biāo)所在當(dāng)前行的line全局替換為lines3、將從2行到10行中出現(xiàn)的所有包含line的字符串中的line替換為lines
:2,10s/line/lines/g表示將2~3行的line全局替換為lines4、全文的行首加入//字符,批量注釋時非常有用
:%s/^/\/\//表示在全文范圍行首替換插入//,注意在Vim中需要將/進行轉(zhuǎn)義后才可以替換5.將所有行尾多余的空格刪除
:%s= *$==表示全局替換行尾的一個或多個空格,更多正則表達(dá)式的說明可以參考Vim正則表達(dá)式總結(jié)
- 上一篇: java的百钱百鸡,来自我国古代数学家张
- 下一篇: 携程研发方向秋招专业笔试