構文は次のとおりです: [addr]s/ソース文字列/宛先文字列/[オプション]
グローバル置換コマンドは次のとおりです: :%s/ソース文字列/宛先文字列/g
[addr]は検索範囲を示し、省略は示します現在の行。
例: "1, 20": 1 行目から 20 行目までを意味します。
"%": "1,$" と同じ、ファイル全体を意味します。
".,$": 現在のファイルからファイルの末尾までの行 ;
s: 置換操作を表します
[オプション]: 操作のタイプを表します
例: g はグローバル置換を表します
c は確認を表します
p は置換結果の表示行を表します行ごと (Ctrl + L で画面が復元されます);
オプションを省略すると、各行の最初に一致した文字列のみが置換されます
ソース文字列と宛先文字列に特殊文字が含まれる場合は、次の文字列でエスケープする必要があります。 ""
ここにいくつかの例があります:
#それまたはこれをこれまたはそれで置き換えます
:%s/(That) or (this)/u2 or l1/
—-
#子を置き換えます文末にchildren
:%s/child([ , .;!:?])/children1/g
—-
#mgi/r/aboxをmgi/r/asquareに置き換えます
:g /mg([ira])box/s//mg// my1square/g <=> :g/mg[ira]box/s/box/square/g
—-
#複数のスペースを次のように置き換えますスペース 1 つ
:%s/ */ /g
——-
#ピリオドまたはコロンの後の 1 つ以上のスペースをスペースに置き換えます
:%s/([:.]) */1 /g
—-
#空行をすべて削除
: g/^$/d
—-
#空行と空行をすべて削除
:g/^[ ][ ]*$/d
— -
#各行の先頭に 2 つを挿入します 空白
:%s/^/> /
—-
#追加 .
:.,5/$/./
—-
#次の 6 行の末尾でファイルの行を反転します 序文
:g/.*/m0O <=> :g/^/m0O
—-
#そうでない先頭行を見つけます数値を指定してファイルの末尾に移動します
:g!/^[0-9]/m$ <=> g/^[^0-9]/m$
—-
#ファイルの 12 行目から 17 行目までの 10 単語をコピーし、現在のファイルの最後に置きます
:1,10g/^/12,17t$
~~~~繰り返し回数の役割
— -
#チャプター開始行の下2行目の内容をbeginファイルに書き込みます
:g/ ^chapter/.+2w>>begin
—-
:/^part2/,/^part3 /g/^chapter/.+2w>>begin
—-
:/^part2/, /^part3/g/^chapter/.+2w>>begin|+t$
以上がvim エディターでのグローバル置換コマンドの使用法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。