Vim 查找与替换
vim有强大的字符串查找功能。我们通常在vim下要查找字符串的时候,都是输入/或者?加上需要查找的字符串来进行搜索,比如,想搜索user这个单词,可以输入 :/user 或者 ?/user,两者的区别是前者是从上往下搜索,后者是从下往上搜索。
1、vim 查找字符串命令
1.1、从开头查找
在命令模式下,输入 :/ + 你要查找的字符
,按下回车,可以看到vim把光标移动到该字符串处。
1.2、从结尾处查找
在命令模式下,输入 :? + 你要查找的字符
,按下回车,就能搜索到字符串或字符。
备注:值得注意的是“/”是向下查找,而“?”是向上查找,而在键盘定义上“?”刚好是“/”的上档符。
1.3、上下匹配
默认情况下,搜索会定位到一个离当前光标最近的一个匹配结果。如果我们想要转到下一个/上一个搜索结果,请使用以下按键:
n – 寻找下一个匹配结果
N – 寻找上一个匹配结果
1.4、关闭高亮
搜索后,我们打开别的文件,发现也被高亮了,怎么关闭高亮?
命令模式下,输入:nohlsearch,当然,也可以简写为:noh。
2、vim 字符串替换
查找和替换是任意一款文本编辑器的一组常见和必备功能。Vim 使用以下命令结构实现替换功能。
:<range> s/<search_string>/<replace_string>/<modifier>
range - 定义执行“查找和替换”函数的范围,有两个不同的值:
- %:对整个文件执行
- < start _line > < end_line >:在一组特定的行上面执行操作
search_string - 需要替换的字符串
replace_string - 替换旧字符串的新字符串
modifier - 确定替换行为,有几个不同的值:
- g:全局替换
- gc:在每次更换之前要求确认
- gn:忽略替换功能并突出显示查找结果。