首頁 >運維 >linux運維 >vim編輯器中全域替換指令的用法

vim編輯器中全域替換指令的用法

巴扎黑
巴扎黑原創
2017-08-22 14:11:533400瀏覽

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

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

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

如:「1,20」 :表示從第1行到20行;

「%」:表示整個文件,同「1,$」;

“. ,$” :從目前行到文件尾;

s : 表示替換操作

#[option] : 表示操作類型

如:g 表示全域替換;

c 表示進行確認

p 表示替代結果逐行顯示(Ctrl + L恢復畫面);

省略option時僅對每行第一個符合字串進行替換;

如果在來源字串和目的字串中出現特殊字符,需要用”\”轉義

下面是一些例子:

將That or this 換成This or that

:%s/\(That\) 或 \(this\)/\u\2 or \l\1/

—- 

##將句尾的child換成children

:%s/child\([ ,.;!:?]\)/children\1/g

—-

#將mgi/r/abox換成mgi/r/asquare

:g/mg\([ira]\)box/s//mg//my\1square/g    <= >  :g/mg[ira]box/s/box/square/g

—-

#將多個空格換成一個空格

:%s/ */ /g

—-

#使用空格替換句號或冒號後面的一個或多個空格

:%s/\([:.]\)  * /\1 /g

—-

#刪除所有空白行

:g/^$/d

—-

#刪除所有的空白行和空白行

:g/^[  ][  ]*$/d

—-

在每行的開始插入兩個空白

:%s/^/>  /

—-

##在接下來的6行結尾加入.

:.,5/$ /./

—-

#顛倒檔案的行序

:g/.*/m0O  <=> :g/^/m0O

—-

#尋找不是數字的開始行,並將其移到檔案尾部

:g!/^[0-9]/m$ <=> g/^[^0-9]/m$

—-

#將檔案的第12到17行內容複製10字放到目前檔案的尾端

:1,10g/^/12,17t$

~~~~重複次數的作用

—-

#將chapter開始行下面的第二行的內容寫道begin文件中

:g/^chapter/.+2w>>begin

—-

#:/^part2/,/^part3/ g/^chapter/.+2w>>begin

—-

:/^part2/,/^part3/g/^chapter/.+2w>>begin|+ t$

以上是vim編輯器中全域替換指令的用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn