oeasy教您玩轉(zhuǎn)vim - 34 - # 查找進(jìn)階
查找進(jìn)階
回憶上節(jié)課內(nèi)容??
上次是搜索,是全文搜索
和我們以前的行內(nèi)有點(diǎn)像
/正向,?反向
n保持方向,N改變方向
hls
讓搜索結(jié)果高亮wrapscan
可以從頭搜索noh
取消本次高亮
實(shí)時(shí)搜索
:set incsearch
實(shí)時(shí)匹配搜索輸入
:set noincsearch
不實(shí)時(shí)匹配搜索輸入

大寫小寫
如果查找要忽略大小寫的話
就用
ignorecase
:set ignorecase
簡(jiǎn)寫為
:se ic
取消為
:se noic
:se ic
可以和:set smartcase
智慧大小寫配合如果搜索模式里面有
大寫字母
就完全匹配如果沒有
大寫字母
就忽略大小寫還可以直接在搜索項(xiàng)里加開關(guān)
/oeasy\c
不區(qū)分大小寫的oeasy
/oeasy\C
區(qū)分大小寫的oeasy
具體可以
:h ignorecase

查找當(dāng)前
如果我們?cè)谝粋€(gè)單詞上面的時(shí)候
按下*
就是查找當(dāng)前光標(biāo)所在的單詞
這很適合查找某個(gè)函數(shù)名
或者查找變量名的引用
繼續(xù)遍歷搜索
n保持方向
N改變方向
#
向上進(jìn)行查找
*、#
剛好是電話按鍵中的對(duì)稱兩個(gè)

明確頭尾的單詞
如果我查找的是
/as
as
符合要求ask
符合要求has
也符號(hào)要求oeasy
都符合要求要以
as
為單詞結(jié)尾/as\>
as
符合has
符合要以
as
為單詞開頭/\<as
as
符合ask
符合我們就要
as
這個(gè)單詞/\<as\>
只有
as
符合

快速不按單詞查找
如果我們使用*的話
是按照整個(gè)單詞查找的
比如放到
as
的a
上就是說查到的一定得是個(gè)完整單詞
/\<as\>
如何不按照單詞查找呢?
oeasy
也符合要求比如放到
as
的a
上,g*、g#進(jìn)行查找
只要有
as
就算

設(shè)置 vim
如果關(guān)于搜索高亮的這些設(shè)置你想每次打開
vim
就設(shè)置好那需要設(shè)置當(dāng)前用戶的vim配置文件
vi ~/.vimrc
G到文件的尾部
o在下面新建一行
set hlsearch
設(shè)置搜索高亮set wrapscan
設(shè)置從頭搜索然后重啟這些配置就永遠(yuǎn)保存在你這個(gè)當(dāng)前用戶的
vim
里面了當(dāng)然,如果是實(shí)驗(yàn)樓重啟新環(huán)境的話會(huì)消失
總結(jié)
實(shí)時(shí)搜索
:set incsearch
大寫小寫
ignorecase
查找當(dāng)前單詞
*正向按單詞完全匹配
#反向按單詞完全匹配
g*正向不按單詞匹配
g#反向不按單詞匹配
繼續(xù)查找
n保持方向
N改變方向
這個(gè)搜索可以做一些模糊匹配嗎?
下次再說吧 *
[Github地址] (https://github.com/overmind1980/vimtutorial)
[Gitee地址] (https://gitee.com/overmind1980/vimtutorial)
[藍(lán)橋?qū)嶒?yàn)樓 邀請(qǐng)碼FJWYIMGB] (https://www.lanqiao.cn/courses/2840)