vim 常用技巧介绍

vim 常用技巧介绍

vim 指定范围内查找

参考: https://stackoverflow.com/questions/3264120/vim-search-only-between-specific-line-numbers

方法1

指定要搜索的起止行号, search为要搜索的pattern
在这里插入图片描述
如上图, 我们只想查找struct XLogRecord中包含"record"的行, 而非全部文件, 即仅"查找选择(select)的区域". 可以看出struct XLogRecord选择区域对应的"起始"和"结束"行为: 41, 53, 那么在vim底部的命令面板中输入如下查找字符串:

:41,53g/record

在这里插入图片描述
由上图, 可以看出, 查找的就是"选择区域"的结果

方法2

方法1需要手动输入起止行号, 不够直观和自然, 最好是用选择的方式
在visual模式选择要搜索的区域, 然后按下 :
这时, vim就自动确定好了范围

search为需要查找的目标.

:'<,'>g/search

像C/C++等编程语言, 函数体是用"{ }"包起来的, 这时可以在vim命令模式下输入 va{va}, 就可以快速选中此函数大括号中的内容了.

备注: va{ 或 va} 理解
v 在vim中是选择(select)的意思, va{ 或 va} 可以理解为"select a {} 中的内容"

统计指定范围内匹配项的个数

语法如下:

:%s/pattern//gn          # % 代表统计整个文件中匹配的个数
:'<,'>s/pattern//gn      #  '<,'> 是选定的区域匹配的个数

上述统计个数的语法其实利用了的vim替换规则, 如, vim中替换语法如下:

s/pattern/replacement/     # 替换行中出现的每一个pattern

统计个数的语法如下:
s/pattern//gn 即: 通过"空"替换的方式, 来实现统计个数的目的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值