oeasy教您玩转vim - 34 - # 查找进阶
查找进阶
回忆上节课内容🤔
上次是搜索,是全文搜索
和我们以前的行内有点像
/正向,?反向
n保持方向,N改变方向
hls
让搜索结果高亮wrapscan
可以从头搜索noh
取消本次高亮
实时搜索
:set incsearch
实时匹配搜索输入
:set noincsearch
不实时匹配搜索输入

大写小写
如果查找要忽略大小写的话
就用
ignorecase
:set ignorecase
简写为
:se ic
取消为
:se noic
:se ic
可以和:set smartcase
智慧大小写配合如果搜索模式里面有
大写字母
就完全匹配如果没有
大写字母
就忽略大小写还可以直接在搜索项里加开关
/oeasy\c
不区分大小写的oeasy
/oeasy\C
区分大小写的oeasy
具体可以
:h ignorecase

查找当前
如果我们在一个单词上面的时候
按下*
就是查找当前光标所在的单词
这很适合查找某个函数名
或者查找变量名的引用
继续遍历搜索
n保持方向
N改变方向
#
向上进行查找
*、#
刚好是电话按键中的对称两个

明确头尾的单词
如果我查找的是
/as
as
符合要求ask
符合要求has
也符号要求oeasy
都符合要求要以
as
为单词结尾/as\>
as
符合has
符合要以
as
为单词开头/\<as
as
符合ask
符合我们就要
as
这个单词/\<as\>
只有
as
符合

快速不按单词查找
如果我们使用*的话
是按照整个单词查找的
比如放到
as
的a
上就是说查到的一定得是个完整单词
/\<as\>
如何不按照单词查找呢?
oeasy
也符合要求比如放到
as
的a
上,g*、g#进行查找
只要有
as
就算

设置 vim
如果关于搜索高亮的这些设置你想每次打开
vim
就设置好那需要设置当前用户的vim配置文件
vi ~/.vimrc
G到文件的尾部
o在下面新建一行
set hlsearch
设置搜索高亮set wrapscan
设置从头搜索然后重启这些配置就永远保存在你这个当前用户的
vim
里面了当然,如果是实验楼重启新环境的话会消失
总结
实时搜索
:set incsearch
大写小写
ignorecase
查找当前单词
*正向按单词完全匹配
#反向按单词完全匹配
g*正向不按单词匹配
g#反向不按单词匹配
继续查找
n保持方向
N改变方向
这个搜索可以做一些模糊匹配吗?
下次再说吧 *
[Github地址] (https://github.com/overmind1980/vimtutorial)
[Gitee地址] (https://gitee.com/overmind1980/vimtutorial)
[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/courses/2840)