码迷,mamicode.com
首页 > 系统相关 > 详细

vim 搜尋取代功能

时间:2018-02-15 11:31:42      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:部分   pix   控制   忽略   指令   格式   意思   功能   log   

VI 的搜尋取代語法格式大致如下

:[範圍]s/[比對字串]/[取代字串]/[g,c,i]

範圍部分:

範圍表示法為開頭 , 結束

    假如我要從第 1 行到第 150 行,可以這樣下: 1, 150

    假如我要從第 1 行到最後一行,可以這樣下: 1, $

    假如我要設定全部範圍,可以這樣下: % (其實跟 1, $ 意義是一樣的)

    假如我要從游標所在行之後到最後一行,可以這樣下:., $

小寫 s 代表意義:

告訴VI我要做 substitute(置換) 動作

比對/取代字串部分:

大小寫有分,如果內容為特殊字元,需加上 \ (脫曳字元)

EX:換行符號 \n



假如我要設定的是一個"單元",前後需用 \( 和 \) 包起來,後面會說明詳細用法

g c i參數分別代表的意義:

這個部分是選擇性的,也就是額外控制項

由於 VI 對大小寫是有區別的,如果要忽略大寫小可以用 「i」(忽略) 這個參數來控制

如果不加上「g」這個控制項,VI只會把每行比對到的第一個做取代動作,加上「g」能確保每行的每個字都能被比對到

有時候,有些特殊的地方是你不想取代的,可以用「c」(確認) 這個參數來控制

    如此一來,每次比對到的時候,會詢問 (y/n/a/q/l/^E/^Y)? 這些參數

    y 是代表執行目前的取代。

    n 是跳過。

    a 代表 always ,就是從目前以後的取代都會執行。

    q 則是不要作取代,並且離開詢問要不要取代的狀態,並回到指令模式或原來的模式下。

    l 則是 last 的意思,就是目前這個取代執行後就離開詢問的取代模式,回到指令模式或原來的模式下。

    ^E 表示往前一頁。

    ^Y 表示往後一頁。

範例語法:

我要把文件中的所有 awei 置換成 AwEi

:%s/awei/AwEi/g

以上資料來自 http://awei791129.pixnet.net/blog/post/29353976-%5Blinux%5D%5Bvi%5D-vi-or-vim-的搜尋取代功能

vim 搜尋取代功能

标签:部分   pix   控制   忽略   指令   格式   意思   功能   log   

原文地址:https://www.cnblogs.com/youchihwang/p/8449327.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!