Vim中的查找、替换与快速移动

news/2024/7/21 13:28:02 标签: Vim, Vim查找, Vim替换, Vim快速移动

查找

在normal模式下按 /键即可进入查找模式,输入需要查找的字符串按下回车即可查找,vim会自动匹配第一个
查找下一个:n
查找上一个:N
正则查找:/vim$匹配行尾的vim
转义查找:/vim\$ 查找字符串“vim$”,转义符为 \
大小写不敏感查找:\c 例如:/vim\c
大小写敏感查找:\C 例如:/VIM\C (vim默认采用大小写敏感查找)
查找当前分词:* ,只可匹配单词 g* 可匹配单词与单词中的字符

查找与替换

:s(substitute) 命令用来查找和替换字符串。
语法》 :{作用范围}s/{目标内容}/{替换内容}/{替换标志}
例如》 :%s/name/names/g 会在全局范围(%)查找name并且提花难为names,所有出现的都会被替换(g)

作用范围

作用范围分为当前行(:s),选区(:10,20s :.,+10s),全文(:%s
:10,20s 意思为 第10行到20行
:.,+10s 意思为 从当前行(.)开始于接下来的10行(+10)

替换标志

g 全局替换,替换所有出现的目标
空替换标志表示只替换一行中目标的首次出现,之后的出现将不再替换,注意是一行中
i 表示大小写不敏感
I 表示大小写敏感
c 表示需要确认,回车后vim会将光标移动到每一次查找的字符串所出现的位置,并提示replace with bar (y/n/a/q/l/^E/^Y)? 按下y表示替换,n表示不替换,a表示替换所有,q表示退出查找模式, l表示替换当前位置并退出。^E与^Y是光标移动快捷键

快速移动

快速移动配合查找与替换,将会大大提升你的效率。

vim中光标快速移动

通过h j k l进行字符移动,支持数字前缀,比如10j,向下移动10行
通过w b e ge 进行单词移动
w: 移动光标到下一个单词的词首
b: 移动光标到上一个单词的词首
e: 移动光标到下一个单词的结尾
ge: 移动光标到上一个单词的结尾
W B E具有同样的功能,区别是,它是用空格来分隔单词的,跨度更大

文件中移动

:set nu(number) 显示行号
:10 光标移动到文件的第10行
gg 移动到文件首行
G 移动到文件尾行
q/q? 可以列出查找历史
/ 查找字符串 可以查找字符串
查找字符串 反向查找字符串
例子:
ggyG 拷贝整个文件


http://www.niftyadmin.cn/n/1689331.html

相关文章

C#(X):语言基本元素,类型,变量,方法,算法

构成C#语言的基本元素 键值关键字可以直接在文档中寻找操作符参见文档标识符变量使用骆驼法,方法,类名,名称空间都使用Pascal方法标点符号不表示编程思想字面值整数,实数,字符,字符串,布尔值&a…

Telnet的使用,测试端口是否开放

Telnet的使用,测试端口是否开放Telnet1. 开启telnet功能2. 检测telnet是否可以正常使用3. 通过telnet检查某个端口号是否打开4. 退出telnet拓展知识Telnet 说明:telnet意思是Internet的远程登录协议,可以通过它远程来控制别的计算机。现在一般…

C#(X):方法,构造器和调试

方法 方法永远是类或者结构体的成员类最基本的成员只有两个:字段(数据)和方法(算法)方法的作用:隐藏复杂逻辑,把大算法分解为小算法,复用方法的声明和调用 声明定义不分家&#xff…

Spring Cloud:Cannot execute request on any known server - 版本不一致问题

简介 Error : Cannot execute request on any known server 翻译过来就是:无法在任何已知服务器上执行请求。这个错误提示信息,相信小伙伴们在配置SpringCloud的时候,经常会遇到。虽然这个错误提示看似简单,但是能够引发它的原因…

C# (X):操作符,表达式和语句

操作符 操作符的本质是函数的“简记法” 为自定义数据类型创建操作符:operator关键字 typeof操作符 class Program{static void Main(string[] args){Type t typeof(int);Console.WriteLine(t.Namespace);Console.WriteLine(t.FullName);Console.WriteLine(t.As…

C# (X):字段,属性,索引器,常量

tips:为什么字段是field field表示的是一段空间,字段表示的是内存中的一段空间 字段(field) 什么是字段 字段是一种表示与对象或类型(类与结构体)关联的变量字段是类型的成员与对象关联的字段也称之为“…

C# (X):参数和扩展方法(this参数)

GetHashCode方法 用于分辨不同的对象 Student stu new Student(); Console.WriteLine(stu.GetHashCode()); Student st2 new Student(); Console.WriteLine(st2.GetHashCode());传值参数 值类型引用类型 引用参数 定义:使用ref修饰符声明的形参特征&#xff…

C# (X):委托

委托(delegate) 委托是函数指针的升级版一切皆地址 变量(数据)是以某个地址为起点的一段内存中所储存的值函数(算法)是以某个地址为起点的一段内存中所储存的一组机器语言指令 直接调用和间接调用 直接调用…