vim技巧 查詢

2021-10-19 21:10:59 字數 1334 閱讀 9887

vim技巧-查詢

1.查詢命令

1.1 執行一次查詢

普通模式下,/會呼叫查詢提示符,如果vim掃瞄到文件尾部仍沒有找到目標,會提示"search hit bottom, continuing at top"。這意味著文件會迴繞至開頭繼續查詢。

如果想關閉文件迴繞查詢,可以關閉』wrapscan』選項:

:set nowrapscan

1.2 指定查詢方向

/鍵查詢時,執行正向掃瞄,?鍵查詢時,執行反向掃瞄。

1.3 重複上一次查詢

n用於跳轉到下一次匹配,n用於跳轉到上一次匹配。

1.4 回溯之前的查詢

/或?查詢提示符出現後,可以通過鍵,瀏覽之前的查詢命令。

2. 高亮匹配到的查詢

預設下,vim不會把所有匹配顯示的展示出來,通過啟用』hlsearch』選項,可以把所有匹配高亮顯示。

禁用此模式:

set nohlsearch(se nohls,se hls!)

3. 預覽第一次匹配

『incsearch』選項會使vim根據查詢字元,預覽到第一次匹配。每次輸入字元,都會即時更新預覽內容。

:set incsearch

3.1 檢查是否存在匹配

如果只是想確認單詞存在,可以精確匹配,然後,馬上結束查詢並返回原處。

3.2 根據預覽結果對查詢域自動補全

可以對當前匹配結果自動補全。

4. 統計當前模式匹配的次數

:%s///gn

實際上呼叫了substitute命令,標誌位n會抑制正常的替換操作,替換域無論為什麼都是不生效的。

5. 將游標偏移到查詢匹配的結尾

每次執行查詢命令時,游標總是被定為到匹配的首字母上,可以通過偏移功能將游標定位於查詢匹配的結尾。

search-offset選項控制這一操作。

可以在查詢時鍵入//e,即可以將游標置於查詢匹配的結尾。

6. 對完整的查詢匹配進行操作

vim查詢命令可以允許我們在所有的匹配之間快速調整,但是在完整的匹配上進行操作也是必要的。

如果想把文件裡的rb和ruby字元全部轉變為大寫,

/\vr(u)?by(y)? \c => 元字元\c會強制區分大小寫

這樣可以將所有的匹配字元高亮起來,然後

gu//e => // => . => //.

7. 利用查詢歷史,迭代完成複雜模式

示例檔案1.txt:

my name is 『caoqing』.

my dog is 『pipi』.

i love 『pipi』.

匹配所有單引號裡的內容。

7.1 粗略匹配

/\v』.+』\c/

vim技巧 查詢替換

vi vim 中可以使用 s 命令來替換字串 s vivian sky 替換當前行第乙個 vivian 為 sky s vivian sky g 替換當前行所有 vivian 為 sky n,s vivian sky 替換第 n 行開始到最後一行中每一行的第乙個 vivian 為 sky n,s v...

vim 使用技巧

本文一般情況下用 1.選定文字 拷貝貼上 v為可視模式,可以選定多行。選定多行之後,可以用yy或者dd等等進行拷貝和剪下。p 是貼上 y 和d 可以直接拷貝或者剪下選定的內容 yw是拷貝乙個單詞 如果要複製整行的最簡單辦法就是v,y,p 就行了 v是可以選定一行任意個字元的,v是行選定的,一次一整行...

vim使用技巧

v為可視模式,可以選定多行。選定多行之後,可以用yy或者dd等等進行拷貝和剪下。p 是貼上 y 和d 可以直接拷貝或者剪下選定的內容 yw是拷貝乙個單詞 如果要複製整行的最簡單辦法就是v,y,p 就行了 v是可以選定一行任意個字元的,v是行選定的,一次一整行,然後通過向下或向上移動游標而選定多行。對...