Vim是什么及其特点请参考本人的作品:利用Vim保存机密信息
Vim的基本操作请参考陈皓先生的作品:《简明 Vim 练级攻略》
更多精彩请查看本人博客
1、行内查找
下面的语句中字符`x`可为汉字、符号、数字等
-
fx
表示在行内搜索下一个字符x
-
Fx
表示在行内搜索上一个字符x
-
tx
表示在行内搜索下一个字符x
,便光标停留在字符x
之前 -
Tx
表示在行内搜索上一个字符x
,便光标停留在字符x
之前
2、全文查找
在查找命令输入完成并按回车键后,n表示向下搜索,N表示向上搜索;继续搜索命令之前可加数字,如2n表示向下搜索第2个符合条件的字串
未做特殊说明处皆对汉字有效
命令行下输入
:set ignorecase
可设置以 忽略大小写模式 进行搜索命令行下输入
:set noignorecase
可设置以 大小写敏感模式 进行搜索命令行下输入
:set ignorecase smartcase
可设置以 智能匹配大小写模式 进行搜索,在此命令下,当输入的字符串中至少包含一个大写字母时会以大小写敏感模式进行搜索,全为小写字母时以忽略大小写模式进行搜索以上三条命令都可写入配置文件
.vimrc
中在搜索命令中加上
\c
表示以忽略大小写模式 进行搜索在搜索命令中加上
\C
表示以大小写敏感模式 进行搜索:set hls
表示打开搜索高亮-
:set nohls
表示关闭搜索高亮-
/str
表示向下查找字符串str
-
?str
表示向上查找字符串str
-
#
表示向上搜索当前鼠标所在的单词或数字(非选中状态),对数字有效汉字无效 -
*
表示向下搜索当前鼠标所在的单词或数字(非选中状态),对数字有效汉字无效 -
/\<the
表示搜索以the开头
的字符串,不包括the,对数字有效汉字无效 -
/\>the
表示搜索以the结尾
的字符串,不包括the,对数字有效汉字无效 -
/^str
表示搜索以str开头
的行,光标定位到行首,对数字有效汉字无效 -
/str$
表示搜索以str结尾
的行,光标定位到行尾,对数字有效汉字无效 -
/t.e
表示搜索以t
开头中间间隔一个字母并以e
结尾的字符串,可搜索到the、toe等,对数字有效汉字无效
-
3、特殊字符
.*[]^%/?~$这10个特殊字符有特殊意义,使用前需加`\`在前面
* `*`表示它前面的字符可以重复多次或者0次
- `/he*`表示搜索以`h`开头,包含0个或多个e的字符串,如h、he、hee、heee等
- `/\(he\)*`表示搜索`\(`与`\)`包裹起来的字符,重复0次或多次,如he、hehe、hehehe等
* `\+`表示它前面的字符至少重复一次
- `/he\+`表示搜索以`h`开头,至少包含一个`e`,如he、hee、heee等
* `\n`表示匹配一个换行符
- `/the\nword`表示搜索以`the`结尾并以`word`开头的行
* `\=`表示它前面的字符重复0次或1次
- `/boys\=`表示搜索`boy`或`boys`
* `\{n,m}`表示重复n次到m次,当n为空时表示0次,当m为空时表示无限次
- `/te\{,3}`表示搜索t、te、tee、teee,即搜索前一个字母`e`的0到3次
* `\s`表示匹配一个空格或制表符
* `\_s`表示匹配换行或者空格
* `\_a`表示匹配换行或者一个字母
* `\e`表示`<esc>`键
* `\t`表示`<tab>`键
* `\d`表示数字0到9
* `\D`表示非数字字符
* `\l`表示小写字母a到z
* `\L`表示非小写字母
* `\u`表示大写字母A到Z
* `\U`表示非大写字母
* `/你\|我\|他`表示搜索`你`或者`我`或者`他`
* `/你和\(我\|他\|谁\)`表示搜索`你和我`或者`你和他`或者`你和谁`
声明
本文由龙家二少原创,未经允许,谢绝转载!