vim的一些查找及修改操作

:s/foo/bar/gc:在行中查找 foo 并询问是否替换为 bar。

:v/pattern/d:删除所有不匹配 pattern 的行。

:g/pattern/d:删除所有匹配 pattern 的行。
:g/pattern/s/foo/bar/g:在匹配 pattern 的行中,将 foo 替换为 bar。

:%s/old/new/g:在整个文件中将 "old" 替换为 "new"。
:.,$s/old/new/g:从当前行到文件末尾,将 "old" 替换为 "new"。

gf:在当前文件中查找光标下的单词,并将光标定位到第一个匹配项。
* 或 #:在当前文件中查找光标下的单词,* 是向前查找,# 是向后查找。

代码之后,来点小理论:

  1. 查找文本
    • 使用 / 加上你要查找的文本,然后按 Enter。例如,要查找 "example",你可以输入 /example 然后按 Enter
    • 使用 n 查找下一个匹配项,使用 N 查找上一个匹配项。
  2. 高亮显示匹配项
    • 默认情况下,Vim 可能会高亮显示当前查找的匹配项。如果没有,你可以通过设置 hlsearch 选项来启用它::set hlsearch
    • 要清除高亮显示,你可以使用 :noh:nohlsearch
  3. 查找并替换
    • 使用 :s 命令可以在当前行中进行查找和替换。例如,要将 "example" 替换为 "sample",你可以输入 :s/example/sample/
    • 要在整个文件中进行查找和替换,你可以使用 :%s 命令。例如,:%s/example/sample/g 会在整个文件中替换所有 "example" 为 "sample"。
    • g 标志表示全局替换(即替换每一行中的所有匹配项)。
    • 在替换前,Vim 会询问你是否真的想进行替换。如果你不想每次都被询问,可以添加 c 标志(表示确认),这样 Vim 会在每次替换前都询问你。
  4. 查找并进入插入模式以修改 :使用 f 命令可以查找字符并进入普通模式,然后你可以按 i 进入插入模式进行修改。例如,fa 会查找下一个 'a' 字符并将光标置于其上,然后你可以按 i 进入插入模式进行编辑。
  5. 查找并提示修改 :Vim 本身并没有一个内置的命令来"查找并提示修改",但你可以结合使用查找命令和 Vim 的其他功能来实现类似的效果。例如,你可以查找一个文本模式,然后手动检查并决定是否修改它。你可以编写 Vim 脚本或使用插件来自动化这个过程,例如,在找到匹配项时自动显示一个提示或对话框。
相关推荐
果汁分你一半l9 小时前
c++标准io与线程,互斥锁
linux·开发语言·c++·算法·vim
瞌睡不来2 天前
(学习总结25)Linux工具:vim 编辑器 和 gcc/g++ 编译器
linux·学习·编辑器·vim·编译器·gcc/g++
fedorayang2 天前
ubuntu平台下vim自动插件管理
linux·ubuntu·vim
Aphelios3802 天前
Linux 下 VIM 编辑器学习记录:从基础到进阶(上)
java·linux·编辑器·vim
2401_826097623 天前
同步&异步日志系统-日志落地模块的实现
c++·git·vim
m0_748241123 天前
Node.js使用教程
node.js·编辑器·vim
web137656076434 天前
【前端】Node.js使用教程
前端·node.js·vim
叶羽西5 天前
Vim操作笔记
笔记·编辑器·vim
安冬的码畜日常5 天前
【Mastering Vim 2_03】第二章:精通 Vim 高级技巧之:编辑与浏览技巧 + 第三方增强插件的用法
ide·ai·编辑器·vim·vim插件·netrw·easymotion
看山还是山,看水还是。5 天前
Vim 退出编辑模式
linux·运维·数据库·笔记·编辑器·vim